Skip to content

Expose the query executor init config via QueryExecutor#getQueryExecutorConfig#18886

Merged
gortiz merged 1 commit into
apache:masterfrom
gortiz:query-executor-config-getter
Jun 30, 2026
Merged

Expose the query executor init config via QueryExecutor#getQueryExecutorConfig#18886
gortiz merged 1 commit into
apache:masterfrom
gortiz:query-executor-config-getter

Conversation

@gortiz

@gortiz gortiz commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds QueryExecutor#getQueryExecutorConfig() so callers can read the PinotConfiguration the executor was initialized with (the pinot.server.query.executor subset).

  • New interface method with a default that returns an empty PinotConfiguration (back-compatible for any implementation that does not track its init config).
  • ServerQueryExecutorV1Impl retains the config passed to init(...) and returns it.

Motivation

A caller that supplies a per-execution PlanMaker override (the execute(..., PlanMaker) overload) currently has no way to obtain the executor's configuration, so it cannot initialize that PlanMaker with the same settings the executor's own plan maker uses. As a result the override silently falls back to InstancePlanMakerImplV2 defaults and ignores server limits such as max.execution.threads and the group-by trim sizes. This accessor lets such an override be initialized from the executor's real config.

Compatibility

Purely additive: a new default interface method plus a stored field and getter. No existing signatures change and no behavior changes for current callers.

🤖 Generated with Claude Code

…torConfig

Add a getQueryExecutorConfig() accessor to the QueryExecutor interface (default
returns an empty PinotConfiguration) and implement it in ServerQueryExecutorV1Impl
by retaining the configuration passed to init(). This lets a caller that supplies a
per-execution PlanMaker override (the execute(..., PlanMaker) overload) initialize
that PlanMaker with the same settings the executor's own plan maker uses, so the
override honors limits such as max.execution.threads and the group-by trim sizes
instead of falling back to defaults.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@gortiz gortiz requested a review from yashmayya June 30, 2026 09:47
@codecov-commenter

codecov-commenter commented Jun 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 33.33333% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 64.78%. Comparing base (2103aa2) to head (c79feec).

Files with missing lines Patch % Lines
...pache/pinot/core/query/executor/QueryExecutor.java 0.00% 1 Missing ⚠️
...core/query/executor/ServerQueryExecutorV1Impl.java 50.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #18886      +/-   ##
============================================
+ Coverage     64.77%   64.78%   +0.01%     
  Complexity     1318     1318              
============================================
  Files          3393     3393              
  Lines        211559   211562       +3     
  Branches      33283    33283              
============================================
+ Hits         137029   137071      +42     
+ Misses        63458    63415      -43     
- Partials      11072    11076       +4     
Flag Coverage Δ
custom-integration1 100.00% <ø> (ø)
integration 100.00% <ø> (ø)
integration1 100.00% <ø> (ø)
integration2 0.00% <ø> (ø)
java-21 64.78% <33.33%> (+0.01%) ⬆️
temurin 64.78% <33.33%> (+0.01%) ⬆️
unittests 64.78% <33.33%> (+0.01%) ⬆️
unittests1 56.97% <33.33%> (-0.01%) ⬇️
unittests2 37.14% <33.33%> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@gortiz gortiz merged commit b3124b6 into apache:master Jun 30, 2026
19 of 21 checks passed
@gortiz gortiz deleted the query-executor-config-getter branch June 30, 2026 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants