Skip to content

Attribute ES|QL shard search load in Lucene operators#142841

Merged
jimczi merged 18 commits intoelastic:mainfrom
jimczi:lucene_operator_search_load
Feb 24, 2026
Merged

Attribute ES|QL shard search load in Lucene operators#142841
jimczi merged 18 commits intoelastic:mainfrom
jimczi:lucene_operator_search_load

Conversation

@jimczi
Copy link
Copy Markdown
Contributor

@jimczi jimczi commented Feb 23, 2026

This PR completes ES|QL shard-level search load accounting by attributing shard search load from Lucene source operators during query execution. It introduces per-shard timing and row emission tracking in LuceneOperator, reports shard load deltas through SourceOperator, and integrates the Driver run loop to ensure load is reported on status updates and operator completion. As a follow-up, these shard-level statistics could also be surfaced in the ES|QL status output.

This PR completes ES|QL shard-level search load accounting by attributing shard search load from Lucene source operators during query execution.
It introduces per-shard timing and row emission tracking in LuceneOperator, reports shard load deltas through SourceOperator, and integrates the Driver run loop to ensure load is reported on status updates and operator completion.
As a follow-up, these shard-level statistics could also be surfaced in the ES|QL status output.
@jimczi jimczi requested review from andreidan and nik9000 February 23, 2026 10:03
@jimczi jimczi added >feature :Analytics/Compute Engine Analytics in ES|QL :Search Foundations/Search Catch all for Search Foundations v9.4.0 labels Feb 23, 2026
@elasticsearchmachine elasticsearchmachine added Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch labels Feb 23, 2026
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-analytical-engine (Team:Analytics)

@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Hi @jimczi, I've created a changelog YAML for you.

@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-search-foundations (Team:Search Foundations)

Copy link
Copy Markdown
Member

@nik9000 nik9000 left a comment

Choose a reason for hiding this comment

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

Seems sane to me.

Copy link
Copy Markdown
Contributor

@andreidan andreidan 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 adding this Jim

@jimczi
Copy link
Copy Markdown
Contributor Author

jimczi commented Feb 24, 2026

@elasticmachine run Elasticsearch Serverless Checks

@jimczi jimczi merged commit 4782211 into elastic:main Feb 24, 2026
35 checks passed
@jimczi jimczi deleted the lucene_operator_search_load branch February 24, 2026 17:05
szybia added a commit to szybia/elasticsearch that referenced this pull request Feb 24, 2026
…on-sliced-reindex

* upstream/main:
  Mute org.elasticsearch.reindex.management.ReindexManagementClientYamlTestSuiteIT test {yaml=reindex/30_cancel_reindex/Cancel running reindex returns response and GET confirms completed} elastic#142079
  [ESQL] Fix async logging consistency and severity (elastic#142401)
  more consistent allow_no_indices=false errors (elastic#142373)
  Attribute ES|QL shard search load in Lucene operators (elastic#142841)
  MetricsInfoOperator refactoring (elastic#142935)
ivancea added a commit that referenced this pull request Mar 2, 2026
Fixes #143111
Fixes #143086
Fixes #142986

Introduced in #142841

The `now` variable holds millis, while the `reportSearchLoad()` expects nanos.
Propagated `nowSupplier` there instead to pass the actual nanos.
tballison pushed a commit to tballison/elasticsearch that referenced this pull request Mar 3, 2026
Fixes elastic#143111
Fixes elastic#143086
Fixes elastic#142986

Introduced in elastic#142841

The `now` variable holds millis, while the `reportSearchLoad()` expects nanos.
Propagated `nowSupplier` there instead to pass the actual nanos.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Analytics/Compute Engine Analytics in ES|QL >feature :Search Foundations/Search Catch all for Search Foundations Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants