This is an automated email from the ASF dual-hosted git repository.

caogaofei pushed a commit to branch mergeMaster0611
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/mergeMaster0611 by this push:
     new 2c2b208d412 add WriteFragmentParallelPlanner in 
TableModelDistributePlanner
2c2b208d412 is described below

commit 2c2b208d4125200c38a3e013b7b24aae28a3537a
Author: Beyyes <[email protected]>
AuthorDate: Tue Jun 11 15:43:12 2024 +0800

    add WriteFragmentParallelPlanner in TableModelDistributePlanner
---
 .../plan/planner/distribution/WriteFragmentParallelPlanner.java    | 3 +--
 .../relational/planner/distribute/TableDistributionPlanner.java    | 5 ++++-
 ...tInstanceGenerator.java => TableModelQueryFragmentPlanner.java} | 7 ++++---
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/WriteFragmentParallelPlanner.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/WriteFragmentParallelPlanner.java
index 9bc526ee4f5..b1d1fe80123 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/WriteFragmentParallelPlanner.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/WriteFragmentParallelPlanner.java
@@ -21,7 +21,6 @@ package 
org.apache.iotdb.db.queryengine.plan.planner.distribution;
 
 import org.apache.iotdb.commons.partition.StorageExecutor;
 import org.apache.iotdb.db.queryengine.common.MPPQueryContext;
-import org.apache.iotdb.db.queryengine.plan.analyze.Analysis;
 import org.apache.iotdb.db.queryengine.plan.analyze.IAnalysis;
 import org.apache.iotdb.db.queryengine.plan.planner.IFragmentParallelPlaner;
 import org.apache.iotdb.db.queryengine.plan.planner.plan.FragmentInstance;
@@ -40,7 +39,7 @@ public class WriteFragmentParallelPlanner implements 
IFragmentParallelPlaner {
   private MPPQueryContext queryContext;
 
   public WriteFragmentParallelPlanner(
-      SubPlan subPlan, Analysis analysis, MPPQueryContext queryContext) {
+      SubPlan subPlan, IAnalysis analysis, MPPQueryContext queryContext) {
     this.subPlan = subPlan;
     this.analysis = analysis;
     this.queryContext = queryContext;
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributionPlanner.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributionPlanner.java
index 83f1548ee3a..ccfd5b91cd0 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributionPlanner.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributionPlanner.java
@@ -17,6 +17,7 @@ import org.apache.iotdb.common.rpc.thrift.TRegionReplicaSet;
 import org.apache.iotdb.db.queryengine.common.MPPQueryContext;
 import 
org.apache.iotdb.db.queryengine.execution.exchange.sink.DownStreamChannelLocation;
 import org.apache.iotdb.db.queryengine.plan.analyze.QueryType;
+import 
org.apache.iotdb.db.queryengine.plan.planner.distribution.WriteFragmentParallelPlanner;
 import org.apache.iotdb.db.queryengine.plan.planner.plan.DistributedQueryPlan;
 import org.apache.iotdb.db.queryengine.plan.planner.plan.FragmentInstance;
 import org.apache.iotdb.db.queryengine.plan.planner.plan.LogicalQueryPlan;
@@ -76,7 +77,9 @@ public class TableDistributionPlanner {
     subPlan.getPlanFragment().setRoot(true);
 
     List<FragmentInstance> fragmentInstances =
-        new FragmentInstanceGenerator(subPlan, analysis, 
mppQueryContext).plan();
+        mppQueryContext.getQueryType() == QueryType.READ
+            ? new TableModelQueryFragmentPlanner(subPlan, analysis, 
mppQueryContext).plan()
+            : new WriteFragmentParallelPlanner(subPlan, analysis, 
mppQueryContext).parallelPlan();
 
     // Only execute this step for READ operation
     if (mppQueryContext.getQueryType() == QueryType.READ) {
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/FragmentInstanceGenerator.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableModelQueryFragmentPlanner.java
similarity index 97%
rename from 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/FragmentInstanceGenerator.java
rename to 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableModelQueryFragmentPlanner.java
index 623217e340f..2d9cf1a2b01 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/FragmentInstanceGenerator.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableModelQueryFragmentPlanner.java
@@ -46,9 +46,10 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 
-public class FragmentInstanceGenerator {
+public class TableModelQueryFragmentPlanner {
 
-  private static final Logger LOGGER = 
LoggerFactory.getLogger(FragmentInstanceGenerator.class);
+  private static final Logger LOGGER =
+      LoggerFactory.getLogger(TableModelQueryFragmentPlanner.class);
 
   private final SubPlan subPlan;
 
@@ -67,7 +68,7 @@ public class FragmentInstanceGenerator {
   // Record FragmentInstances dispatched to same DataNode
   private final Map<TDataNodeLocation, List<FragmentInstance>> dataNodeFIMap = 
new HashMap<>();
 
-  FragmentInstanceGenerator(SubPlan subPlan, Analysis analysis, 
MPPQueryContext queryContext) {
+  TableModelQueryFragmentPlanner(SubPlan subPlan, Analysis analysis, 
MPPQueryContext queryContext) {
     this.subPlan = subPlan;
     this.analysis = analysis;
     this.queryContext = queryContext;

Reply via email to