-
Notifications
You must be signed in to change notification settings - Fork 25.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Report failures on partial results #124823
Conversation
Hi @smalyshev, I've created a changelog YAML for you. |
Pinging @elastic/es-analytical-engine (Team:Analytics) |
Pinging @elastic/es-search-foundations (Team:Search Foundations) |
@@ -143,7 +144,27 @@ protected static void assertClusterMetadataInResponse(EsqlQueryResponse resp, bo | |||
assertThat((int) inner.get("total"), equalTo(numClusters)); | |||
assertTrue(inner.containsKey("details")); | |||
} else { | |||
assertNull(clusters); | |||
final Object partial = esqlResponseAsMap.get("is_partial"); | |||
if (partial != null && (Boolean) partial) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there any tests that exercise this new assertion path?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Skipped is partial too, so all results with skipped clusters would go this route.
We will also need to update the API docs. For example for 8.19, we need to update: https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-query-api.html, which could be done in this PR. And we'll also need to update elasticsearch-specification for 9.x docs. But there, it's more murky, but you could update the files in this PR. We should check with the client/devtools team if they are going to update the ES|QL response object spec to allow us to document this information. |
@quux00 I don't think so since these asciidocs no longer exist on main branch, so we'd need separate PR for 8.x only to update this. |
You probably have to check out the 8.x branch and do it there. That's worth doing since 8.19 is a GA for ES|QL CCS and many customers will likely be using that version for years to come. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. We'll do the docs changes in follow-on PRs.
Thanks for driving this to completion Stas!
💔 Backport failed
You can use sqren/backport to manually backport by running |
💚 All backports created successfully
Questions ?Please refer to the Backport tool documentation |
* Report failures on partial results (cherry picked from commit 0e6d6f4) # Conflicts: # x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/action/EsqlExecutionInfo.java # x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/action/EsqlQueryResponse.java
* Report failures on partial results (cherry picked from commit 0e6d6f4)
* Report failures on partial results (cherry picked from commit 0e6d6f4)
When there are partial failures, ExecutionInfo would always produce
_clusters/details/*
which contains info about clusters that failed.