Skip to content

Commit 2a8e987

Browse files
committed
Included ShardContext list into LocalExecutionPlannerContext
1 parent 3a753d2 commit 2a8e987

File tree

3 files changed

+11
-17
lines changed

3 files changed

+11
-17
lines changed

x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/planner/AbstractPhysicalOperationProviders.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,7 @@ public abstract class AbstractPhysicalOperationProviders implements PhysicalOper
6060
public final PhysicalOperation groupingPhysicalOperation(
6161
AggregateExec aggregateExec,
6262
PhysicalOperation source,
63-
LocalExecutionPlannerContext context,
64-
List<EsPhysicalOperationProviders.ShardContext> shardContexts
63+
LocalExecutionPlannerContext context
6564
) {
6665
// The layout this operation will produce.
6766
Layout.Builder layout = new Layout.Builder();
@@ -96,8 +95,7 @@ public final PhysicalOperation groupingPhysicalOperation(
9695
aggregatorMode,
9796
sourceLayout,
9897
false, // non-grouping
99-
s -> aggregatorFactories.add(s.supplier.aggregatorFactory(s.mode, s.channels)),
100-
shardContexts
98+
s -> aggregatorFactories.add(s.supplier.aggregatorFactory(s.mode, s.channels))
10199
);
102100

103101
if (aggregatorFactories.isEmpty() == false) {
@@ -171,8 +169,7 @@ else if (aggregatorMode.isOutputPartial()) {
171169
aggregatorMode,
172170
sourceLayout,
173171
true, // grouping
174-
s -> aggregatorFactories.add(s.supplier.groupingAggregatorFactory(s.mode, s.channels)),
175-
shardContexts
172+
s -> aggregatorFactories.add(s.supplier.groupingAggregatorFactory(s.mode, s.channels))
176173
);
177174

178175
if (groupSpecs.size() == 1 && groupSpecs.get(0).channel == null) {
@@ -262,8 +259,7 @@ private void aggregatesToFactory(
262259
AggregatorMode mode,
263260
Layout layout,
264261
boolean grouping,
265-
Consumer<AggFunctionSupplierContext> consumer,
266-
List<EsPhysicalOperationProviders.ShardContext> shardContexts
262+
Consumer<AggFunctionSupplierContext> consumer
267263
) {
268264
// extract filtering channels - and wrap the aggregation with the new evaluator expression only during the init phase
269265
for (NamedExpression ne : aggregates) {
@@ -323,8 +319,7 @@ else if (mode == AggregatorMode.FINAL || mode == AggregatorMode.INTERMEDIATE) {
323319
EvalOperator.ExpressionEvaluator.Factory evalFactory = EvalMapper.toEvaluator(
324320
foldContext,
325321
aggregateFunction.filter(),
326-
layout,
327-
shardContexts
322+
layout
328323
);
329324
aggSupplier = new FilteredAggregatorFunctionSupplier(aggSupplier, evalFactory);
330325
}

x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/planner/LocalExecutionPlanner.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,8 @@ public LocalExecutionPlan plan(String description, FoldContext foldCtx, Physical
189189
bigArrays,
190190
blockFactory,
191191
foldCtx,
192-
settings
192+
settings,
193+
shardContexts
193194
);
194195

195196
// workaround for https://github.com/elastic/elasticsearch/issues/99782
@@ -308,7 +309,7 @@ private PhysicalOperation planRrfScoreEvalExec(RrfScoreEvalExec rrf, LocalExecut
308309

309310
private PhysicalOperation planAggregation(AggregateExec aggregate, LocalExecutionPlannerContext context) {
310311
var source = plan(aggregate.child(), context);
311-
return physicalOperationProviders.groupingPhysicalOperation(aggregate, source, context, shardContexts);
312+
return physicalOperationProviders.groupingPhysicalOperation(aggregate, source, context);
312313
}
313314

314315
private PhysicalOperation planEsQueryNode(EsQueryExec esQueryExec, LocalExecutionPlannerContext context) {
@@ -895,7 +896,8 @@ public record LocalExecutionPlannerContext(
895896
BigArrays bigArrays,
896897
BlockFactory blockFactory,
897898
FoldContext foldCtx,
898-
Settings settings
899+
Settings settings,
900+
List<EsPhysicalOperationProviders.ShardContext> shardContexts
899901
) {
900902
void addDriverFactory(DriverFactory driverFactory) {
901903
driverFactories.add(driverFactory);

x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/planner/PhysicalOperationProviders.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
import org.elasticsearch.xpack.esql.planner.LocalExecutionPlanner.LocalExecutionPlannerContext;
1414
import org.elasticsearch.xpack.esql.planner.LocalExecutionPlanner.PhysicalOperation;
1515

16-
import java.util.List;
17-
1816
interface PhysicalOperationProviders {
1917
PhysicalOperation fieldExtractPhysicalOperation(FieldExtractExec fieldExtractExec, PhysicalOperation source);
2018

@@ -23,7 +21,6 @@ interface PhysicalOperationProviders {
2321
PhysicalOperation groupingPhysicalOperation(
2422
AggregateExec aggregateExec,
2523
PhysicalOperation source,
26-
LocalExecutionPlannerContext context,
27-
List<EsPhysicalOperationProviders.ShardContext> shardContexts
24+
LocalExecutionPlannerContext context
2825
);
2926
}

0 commit comments

Comments
 (0)