Skip to content

Conversation

@jimczi
Copy link
Contributor

@jimczi jimczi commented Nov 13, 2025

The ES|QL search context was being created with an incorrect results type, which unintentionally disabled the inner executor in the Lucene index searcher. This hadn’t caused issues previously because parallelisation happens outside the index searcher for most queries, but KNN queries rely on the internal executor for proper parallel rewrite execution.

This change ensures that the correct results type is used so KNN queries executed via ES|QL can leverage the inner executor and parallelise their rewrite phase correctly.

The ES|QL search context was being created with an incorrect results type, which unintentionally disabled the inner executor in the Lucene index searcher. This hadn’t caused issues previously because parallelisation happens outside the index searcher for most queries, but KNN queries rely on the internal executor for proper parallel rewrite execution.

This change ensures that the correct results type is used so KNN queries executed via ES|QL can leverage the inner executor and parallelise their rewrite phase correctly.
@jimczi jimczi requested a review from carlosdelest November 13, 2025 01:19
@jimczi jimczi added >non-issue :Search Relevance/ES|QL Search functionality in ES|QL v9.3.0 labels Nov 13, 2025
@elasticsearchmachine elasticsearchmachine added the Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch label Nov 13, 2025
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search-relevance (Team:Search Relevance)

Copy link
Member

@carlosdelest carlosdelest left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for fixing this!

@jimczi jimczi merged commit 57c385c into elastic:main Nov 13, 2025
34 checks passed
@jimczi jimczi deleted the create_search_context_results_type branch November 13, 2025 12:05
szybia added a commit to szybia/elasticsearch that referenced this pull request Nov 13, 2025
…-json

* upstream/main: (158 commits)
  Cleanup files from repo root folder (elastic#138030)
  Implement OpenShift AI integration for chat completion, embeddings, and reranking (elastic#136624)
  Optimize AsyncSearchErrorTraceIT to avoid failures (elastic#137716)
  Removes support for null TransportService in RemoteClusterService (elastic#137939)
  Mute org.elasticsearch.index.mapper.DateFieldMapperTests testSortShortcuts elastic#138018
  rest-api-spec: fix type of enums (elastic#137521)
  Update Gradle wrapper to 9.2.0 (elastic#136155)
  Add RCS Strong Verification Documentation (elastic#137822)
  Use docvalue skippers on dimension fields (elastic#137029)
  Introduce INDEX_SHARD_COUNT_FORMAT (elastic#137210)
  Mute org.elasticsearch.xpack.inference.integration.AuthorizationTaskExecutorIT testCreatesChatCompletion_AndThenCreatesTextEmbedding elastic#138012
  Fix ES|QL search context creation to use correct results type (elastic#137994)
  Improve Snapshot Logging (elastic#137470)
  Support extra output field in TOP function (elastic#135434)
  Remove NumericDoubleValues class (elastic#137884)
  [ML] Fix ML calendar event update scalability issues (elastic#136886)
  Task may be unregistered outside of the trace context in exceptional cases. (elastic#137865)
  Refine workaround for S3 repo analysis known issue (elastic#138000)
  Additional DEBUG logging on authc failures (elastic#137941)
  Cleanup index resolution (elastic#137867)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

>non-issue :Search Relevance/ES|QL Search functionality in ES|QL Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v9.3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants