From b9ed378355acc5313ebc1031510671f7045f29a9 Mon Sep 17 00:00:00 2001 From: Rong Rong Date: Wed, 29 Nov 2023 12:57:07 -0800 Subject: [PATCH] [multistage][refactor] clean up planner (#12070) * [cleaup] remove plan fragment metadata, it is same concept as dispatchablePlanMetadata * [cleanup] clean separate component logics --------- Co-authored-by: Rong Rong --- .../MultiStageBrokerRequestHandler.java | 2 +- .../apache/pinot/query/QueryEnvironment.java | 4 +-- .../pinot/query/planner/PlanFragment.java | 9 +----- .../query/planner/PlanFragmentMetadata.java | 28 ------------------- .../PhysicalExplainPlanVisitor.java | 4 ++- .../logical/PinotLogicalQueryPlanner.java | 7 ++--- .../query/planner/logical/PlanFragmenter.java | 3 +- .../physical/DispatchablePlanContext.java | 1 - .../DispatchablePlanFragment.java | 3 +- .../{ => physical}/DispatchableSubPlan.java | 2 +- .../physical/PinotDispatchPlanner.java | 1 - .../planner/plannode/PlanNodeVisitor.java | 5 ++-- .../pinot/query/QueryCompilationTest.java | 6 ++-- .../planner/plannode/SerDeUtilsTest.java | 4 +-- .../queries/ResourceBasedQueryPlansTest.java | 2 +- .../runtime/operator/utils/OperatorUtils.java | 2 +- .../plan/serde/QueryPlanSerDeUtils.java | 4 +-- .../service/dispatch/QueryDispatcher.java | 4 +-- .../runtime/queries/QueryRunnerTestBase.java | 4 +-- .../service/dispatch/QueryDispatcherTest.java | 2 +- .../query/service/server/QueryServerTest.java | 4 +-- 21 files changed, 32 insertions(+), 69 deletions(-) delete mode 100644 pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragmentMetadata.java rename pinot-query-planner/src/main/java/org/apache/pinot/query/planner/{ => explain}/PhysicalExplainPlanVisitor.java (98%) rename pinot-query-planner/src/main/java/org/apache/pinot/query/planner/{ => physical}/DispatchablePlanFragment.java (97%) rename pinot-query-planner/src/main/java/org/apache/pinot/query/planner/{ => physical}/DispatchableSubPlan.java (98%) diff --git a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java index 9e744198302..05fb1ddd522 100644 --- a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java +++ b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/MultiStageBrokerRequestHandler.java @@ -61,7 +61,7 @@ import org.apache.pinot.query.QueryEnvironment; import org.apache.pinot.query.catalog.PinotCatalog; import org.apache.pinot.query.mailbox.MailboxService; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.routing.WorkerManager; import org.apache.pinot.query.service.dispatch.QueryDispatcher; import org.apache.pinot.query.type.TypeFactory; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/QueryEnvironment.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/QueryEnvironment.java index 2eb8dfff959..769d6a607fc 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/QueryEnvironment.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/QueryEnvironment.java @@ -62,13 +62,13 @@ import org.apache.calcite.tools.RelBuilder; import org.apache.pinot.common.config.provider.TableCache; import org.apache.pinot.query.context.PlannerContext; -import org.apache.pinot.query.planner.DispatchableSubPlan; -import org.apache.pinot.query.planner.PhysicalExplainPlanVisitor; import org.apache.pinot.query.planner.PlannerUtils; import org.apache.pinot.query.planner.QueryPlan; import org.apache.pinot.query.planner.SubPlan; +import org.apache.pinot.query.planner.explain.PhysicalExplainPlanVisitor; import org.apache.pinot.query.planner.logical.PinotLogicalQueryPlanner; import org.apache.pinot.query.planner.logical.RelToPlanNodeConverter; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.physical.PinotDispatchPlanner; import org.apache.pinot.query.routing.WorkerManager; import org.apache.pinot.query.type.TypeFactory; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragment.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragment.java index ad0f846180e..ed64d237656 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragment.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragment.java @@ -31,15 +31,12 @@ public class PlanFragment { private final int _fragmentId; private final PlanNode _fragmentRoot; - private final PlanFragmentMetadata _fragmentMetadata; private final List _children; - public PlanFragment(int fragmentId, PlanNode fragmentRoot, PlanFragmentMetadata fragmentMetadata, - List children) { + public PlanFragment(int fragmentId, PlanNode fragmentRoot, List children) { _fragmentId = fragmentId; _fragmentRoot = fragmentRoot; - _fragmentMetadata = fragmentMetadata; _children = children; } @@ -51,10 +48,6 @@ public PlanNode getFragmentRoot() { return _fragmentRoot; } - public PlanFragmentMetadata getFragmentMetadata() { - return _fragmentMetadata; - } - public List getChildren() { return _children; } diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragmentMetadata.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragmentMetadata.java deleted file mode 100644 index 0916a8b34ce..00000000000 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PlanFragmentMetadata.java +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.pinot.query.planner; - -/** - * Metadata for a plan fragment. This class won't leave the query planner/broker side. - */ -public class PlanFragmentMetadata { - - public PlanFragmentMetadata() { - } -} diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PhysicalExplainPlanVisitor.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/explain/PhysicalExplainPlanVisitor.java similarity index 98% rename from pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PhysicalExplainPlanVisitor.java rename to pinot-query-planner/src/main/java/org/apache/pinot/query/planner/explain/PhysicalExplainPlanVisitor.java index c51d24f5d35..e1a6ac11763 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/PhysicalExplainPlanVisitor.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/explain/PhysicalExplainPlanVisitor.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.pinot.query.planner; +package org.apache.pinot.query.planner.explain; import java.util.ArrayList; import java.util.Comparator; @@ -25,6 +25,8 @@ import java.util.Map; import java.util.TreeMap; import java.util.stream.Collectors; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.plannode.AggregateNode; import org.apache.pinot.query.planner.plannode.ExchangeNode; import org.apache.pinot.query.planner.plannode.FilterNode; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PinotLogicalQueryPlanner.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PinotLogicalQueryPlanner.java index 4b924316e78..3f9bc6b81db 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PinotLogicalQueryPlanner.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PinotLogicalQueryPlanner.java @@ -32,7 +32,6 @@ import org.apache.calcite.rel.RelRoot; import org.apache.calcite.rel.logical.PinotRelExchangeType; import org.apache.pinot.query.planner.PlanFragment; -import org.apache.pinot.query.planner.PlanFragmentMetadata; import org.apache.pinot.query.planner.QueryPlan; import org.apache.pinot.query.planner.QueryPlanMetadata; import org.apache.pinot.query.planner.SubPlan; @@ -102,8 +101,7 @@ public SubPlan makePlan(QueryPlan queryPlan) { RelDistribution.Type.BROADCAST_DISTRIBUTED, PinotRelExchangeType.getDefaultExchangeType(), null, null, false, false); subPlanRootSenderNode.addInput(subPlanRoot); - PlanFragment planFragment1 = - new PlanFragment(1, subPlanRootSenderNode, new PlanFragmentMetadata(), new ArrayList<>()); + PlanFragment planFragment1 = new PlanFragment(1, subPlanRootSenderNode, new ArrayList<>()); planFragmentMap.put(1, planFragment1); for (Int2ObjectMap.Entry entry : childPlanFragmentIdsMap.int2ObjectEntrySet()) { PlanFragment planFragment = planFragmentMap.get(entry.getIntKey()); @@ -117,8 +115,7 @@ public SubPlan makePlan(QueryPlan queryPlan) { new MailboxReceiveNode(0, subPlanRoot.getDataSchema(), subPlanRoot.getPlanFragmentId(), RelDistribution.Type.BROADCAST_DISTRIBUTED, PinotRelExchangeType.getDefaultExchangeType(), null, null, false, false, subPlanRootSenderNode); - PlanFragment rootPlanFragment = - new PlanFragment(0, rootReceiveNode, new PlanFragmentMetadata(), Collections.singletonList(planFragment1)); + PlanFragment rootPlanFragment = new PlanFragment(0, rootReceiveNode, Collections.singletonList(planFragment1)); SubPlan subPlan = new SubPlan(rootPlanFragment, subPlanContext._subPlanIdToMetadataMap.get(0), new ArrayList<>()); subPlanMap.put(subPlanId, subPlan); } diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PlanFragmenter.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PlanFragmenter.java index 269db82f070..6b62a065513 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PlanFragmenter.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/logical/PlanFragmenter.java @@ -26,7 +26,6 @@ import org.apache.calcite.rel.RelDistribution; import org.apache.calcite.rel.logical.PinotRelExchangeType; import org.apache.pinot.query.planner.PlanFragment; -import org.apache.pinot.query.planner.PlanFragmentMetadata; import org.apache.pinot.query.planner.SubPlan; import org.apache.pinot.query.planner.plannode.AggregateNode; import org.apache.pinot.query.planner.plannode.ExchangeNode; @@ -163,7 +162,7 @@ public PlanNode visitExchange(ExchangeNode node, Context context) { node.isPartitioned()); mailboxSendNode.addInput(nextPlanFragmentRoot); _planFragmentMap.put(senderPlanFragmentId, - new PlanFragment(senderPlanFragmentId, mailboxSendNode, new PlanFragmentMetadata(), new ArrayList<>())); + new PlanFragment(senderPlanFragmentId, mailboxSendNode, new ArrayList<>())); // Return the MailboxReceiveNode as the leave node of the current PlanFragment. return new MailboxReceiveNode(receiverPlanFragmentId, nextPlanFragmentRoot.getDataSchema(), senderPlanFragmentId, diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanContext.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanContext.java index 4699014ad07..f17f48fd2f8 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanContext.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanContext.java @@ -27,7 +27,6 @@ import java.util.Set; import org.apache.calcite.util.Pair; import org.apache.pinot.query.context.PlannerContext; -import org.apache.pinot.query.planner.DispatchablePlanFragment; import org.apache.pinot.query.planner.PlanFragment; import org.apache.pinot.query.planner.plannode.PlanNode; import org.apache.pinot.query.routing.MailboxMetadata; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchablePlanFragment.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanFragment.java similarity index 97% rename from pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchablePlanFragment.java rename to pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanFragment.java index e0bc3f6a45e..78ae57a2c69 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchablePlanFragment.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchablePlanFragment.java @@ -16,13 +16,14 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.pinot.query.planner; +package org.apache.pinot.query.planner.physical; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.pinot.core.routing.TimeBoundaryInfo; +import org.apache.pinot.query.planner.PlanFragment; import org.apache.pinot.query.routing.QueryServerInstance; import org.apache.pinot.query.routing.WorkerMetadata; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchableSubPlan.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchableSubPlan.java similarity index 98% rename from pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchableSubPlan.java rename to pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchableSubPlan.java index 748c3ac3620..76307ab7778 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/DispatchableSubPlan.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/DispatchableSubPlan.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.pinot.query.planner; +package org.apache.pinot.query.planner.physical; import java.util.List; import java.util.Map; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/PinotDispatchPlanner.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/PinotDispatchPlanner.java index 253e01fa92f..f90b751a956 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/PinotDispatchPlanner.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/physical/PinotDispatchPlanner.java @@ -24,7 +24,6 @@ import java.util.Set; import org.apache.pinot.common.config.provider.TableCache; import org.apache.pinot.query.context.PlannerContext; -import org.apache.pinot.query.planner.DispatchableSubPlan; import org.apache.pinot.query.planner.PlanFragment; import org.apache.pinot.query.planner.SubPlan; import org.apache.pinot.query.planner.physical.colocated.GreedyShuffleRewriteVisitor; diff --git a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/plannode/PlanNodeVisitor.java b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/plannode/PlanNodeVisitor.java index f2da4731e97..1fa13cc2a63 100644 --- a/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/plannode/PlanNodeVisitor.java +++ b/pinot-query-planner/src/main/java/org/apache/pinot/query/planner/plannode/PlanNodeVisitor.java @@ -18,7 +18,8 @@ */ package org.apache.pinot.query.planner.plannode; -import org.apache.pinot.query.planner.PhysicalExplainPlanVisitor; +import org.apache.pinot.query.planner.explain.PhysicalExplainPlanVisitor; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; /** @@ -27,7 +28,7 @@ * enforced traversal order, and should be implemented by subclasses. * *

It is recommended that implementors use private constructors and static methods to access main - * functionality (see {@link PhysicalExplainPlanVisitor#explain(org.apache.pinot.query.planner.DispatchableSubPlan)} + * functionality (see {@link PhysicalExplainPlanVisitor#explain(DispatchableSubPlan)} * as an example of a usage of this pattern. * * @param the return type for all visitsPlanNodeVisitor diff --git a/pinot-query-planner/src/test/java/org/apache/pinot/query/QueryCompilationTest.java b/pinot-query-planner/src/test/java/org/apache/pinot/query/QueryCompilationTest.java index 28a386faa08..20d798c9c6c 100644 --- a/pinot-query-planner/src/test/java/org/apache/pinot/query/QueryCompilationTest.java +++ b/pinot-query-planner/src/test/java/org/apache/pinot/query/QueryCompilationTest.java @@ -29,10 +29,10 @@ import java.util.concurrent.locks.ReentrantLock; import java.util.stream.Collectors; import org.apache.calcite.rel.RelDistribution; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; -import org.apache.pinot.query.planner.PhysicalExplainPlanVisitor; import org.apache.pinot.query.planner.PlannerUtils; +import org.apache.pinot.query.planner.explain.PhysicalExplainPlanVisitor; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.plannode.AbstractPlanNode; import org.apache.pinot.query.planner.plannode.AggregateNode; import org.apache.pinot.query.planner.plannode.FilterNode; diff --git a/pinot-query-planner/src/test/java/org/apache/pinot/query/planner/plannode/SerDeUtilsTest.java b/pinot-query-planner/src/test/java/org/apache/pinot/query/planner/plannode/SerDeUtilsTest.java index 59132601b09..676003249ec 100644 --- a/pinot-query-planner/src/test/java/org/apache/pinot/query/planner/plannode/SerDeUtilsTest.java +++ b/pinot-query-planner/src/test/java/org/apache/pinot/query/planner/plannode/SerDeUtilsTest.java @@ -23,8 +23,8 @@ import java.util.Map; import org.apache.pinot.common.proto.Plan; import org.apache.pinot.query.QueryEnvironmentTestBase; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.serde.ProtoProperties; import org.testng.Assert; import org.testng.annotations.Test; diff --git a/pinot-query-planner/src/test/java/org/apache/pinot/query/queries/ResourceBasedQueryPlansTest.java b/pinot-query-planner/src/test/java/org/apache/pinot/query/queries/ResourceBasedQueryPlansTest.java index fa58d622916..5f22006c043 100644 --- a/pinot-query-planner/src/test/java/org/apache/pinot/query/queries/ResourceBasedQueryPlansTest.java +++ b/pinot-query-planner/src/test/java/org/apache/pinot/query/queries/ResourceBasedQueryPlansTest.java @@ -33,7 +33,7 @@ import java.util.regex.Pattern; import org.apache.commons.lang3.StringUtils; import org.apache.pinot.query.QueryEnvironmentTestBase; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.testng.Assert; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; diff --git a/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/operator/utils/OperatorUtils.java b/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/operator/utils/OperatorUtils.java index b771165cadf..7998185f8a7 100644 --- a/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/operator/utils/OperatorUtils.java +++ b/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/operator/utils/OperatorUtils.java @@ -25,7 +25,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.pinot.common.datablock.MetadataBlock; import org.apache.pinot.common.datatable.DataTable; -import org.apache.pinot.query.planner.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; import org.apache.pinot.query.routing.VirtualServerAddress; import org.apache.pinot.query.runtime.operator.OperatorStats; import org.apache.pinot.spi.utils.JsonUtils; diff --git a/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/plan/serde/QueryPlanSerDeUtils.java b/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/plan/serde/QueryPlanSerDeUtils.java index cd4c1d6fd78..c4bded93733 100644 --- a/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/plan/serde/QueryPlanSerDeUtils.java +++ b/pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/plan/serde/QueryPlanSerDeUtils.java @@ -26,8 +26,8 @@ import java.util.regex.Pattern; import org.apache.commons.lang.StringUtils; import org.apache.pinot.common.proto.Worker; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.plannode.AbstractPlanNode; import org.apache.pinot.query.planner.plannode.StageNodeSerDeUtils; import org.apache.pinot.query.routing.MailboxMetadata; diff --git a/pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/QueryDispatcher.java b/pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/QueryDispatcher.java index 12b9d394471..3f1f43c1eb0 100644 --- a/pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/QueryDispatcher.java +++ b/pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/QueryDispatcher.java @@ -45,9 +45,9 @@ import org.apache.pinot.core.util.DataBlockExtractUtils; import org.apache.pinot.core.util.trace.TracedThreadFactory; import org.apache.pinot.query.mailbox.MailboxService; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; import org.apache.pinot.query.planner.PlanFragment; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.plannode.MailboxReceiveNode; import org.apache.pinot.query.planner.plannode.PlanNode; import org.apache.pinot.query.routing.QueryServerInstance; diff --git a/pinot-query-runtime/src/test/java/org/apache/pinot/query/runtime/queries/QueryRunnerTestBase.java b/pinot-query-runtime/src/test/java/org/apache/pinot/query/runtime/queries/QueryRunnerTestBase.java index 4d6a79052cf..33b68f807e7 100644 --- a/pinot-query-runtime/src/test/java/org/apache/pinot/query/runtime/queries/QueryRunnerTestBase.java +++ b/pinot-query-runtime/src/test/java/org/apache/pinot/query/runtime/queries/QueryRunnerTestBase.java @@ -55,8 +55,8 @@ import org.apache.pinot.query.QueryServerEnclosure; import org.apache.pinot.query.QueryTestSet; import org.apache.pinot.query.mailbox.MailboxService; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.routing.QueryServerInstance; import org.apache.pinot.query.routing.VirtualServerAddress; import org.apache.pinot.query.runtime.plan.DistributedStagePlan; diff --git a/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/dispatch/QueryDispatcherTest.java b/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/dispatch/QueryDispatcherTest.java index 0b62e6d79f1..c7be429297c 100644 --- a/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/dispatch/QueryDispatcherTest.java +++ b/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/dispatch/QueryDispatcherTest.java @@ -31,7 +31,7 @@ import org.apache.pinot.query.QueryEnvironmentTestBase; import org.apache.pinot.query.QueryTestSet; import org.apache.pinot.query.mailbox.MailboxService; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.runtime.QueryRunner; import org.apache.pinot.query.service.server.QueryServer; import org.apache.pinot.query.testutils.QueryTestUtils; diff --git a/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/server/QueryServerTest.java b/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/server/QueryServerTest.java index 68b249d2ea6..140851f6667 100644 --- a/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/server/QueryServerTest.java +++ b/pinot-query-runtime/src/test/java/org/apache/pinot/query/service/server/QueryServerTest.java @@ -35,8 +35,8 @@ import org.apache.pinot.query.QueryEnvironment; import org.apache.pinot.query.QueryEnvironmentTestBase; import org.apache.pinot.query.QueryTestSet; -import org.apache.pinot.query.planner.DispatchablePlanFragment; -import org.apache.pinot.query.planner.DispatchableSubPlan; +import org.apache.pinot.query.planner.physical.DispatchablePlanFragment; +import org.apache.pinot.query.planner.physical.DispatchableSubPlan; import org.apache.pinot.query.planner.plannode.PlanNode; import org.apache.pinot.query.routing.QueryServerInstance; import org.apache.pinot.query.routing.WorkerMetadata;