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

yiguolei pushed a commit to branch opt_memtable_speed
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/opt_memtable_speed by this 
push:
     new 82bfc75951 Revert "Revert "[fix](nereids) parallel instance number is 
set to 1 incorrectly (#22748)" (#23106)" (#23184)
82bfc75951 is described below

commit 82bfc75951cc78711f315f7bbf6cb2c65f57797b
Author: xzj7019 <[email protected]>
AuthorDate: Fri Aug 18 17:27:09 2023 +0800

    Revert "Revert "[fix](nereids) parallel instance number is set to 1 
incorrectly (#22748)" (#23106)" (#23184)
    
    This reverts commit daa86826acab06304b62ea7bf8b979cb4322a227.
    
    Co-authored-by: zhongjian.xzj <[email protected]>
---
 .../doris/nereids/glue/translator/PhysicalPlanTranslator.java     | 2 --
 .../src/main/java/org/apache/doris/planner/AggregationNode.java   | 5 -----
 .../src/main/java/org/apache/doris/planner/AssertNumRowsNode.java | 5 +++++
 .../src/main/java/org/apache/doris/planner/EmptySetNode.java      | 5 +++++
 fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java   | 8 +++++++-
 fe/fe-core/src/main/java/org/apache/doris/planner/RepeatNode.java | 5 -----
 fe/fe-core/src/main/java/org/apache/doris/planner/SelectNode.java | 5 -----
 fe/fe-core/src/main/java/org/apache/doris/planner/SortNode.java   | 5 -----
 .../suites/query_p0/join/test_nestedloop_semi_anti_join.groovy    | 2 --
 9 files changed, 17 insertions(+), 25 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
index 4144987bae..b2a2a99c04 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
@@ -1813,7 +1813,6 @@ public class PhysicalPlanTranslator extends 
DefaultPlanVisitor<PlanFragment, Pla
         RepeatNode repeatNode = new RepeatNode(context.nextPlanNodeId(),
                 inputPlanFragment.getPlanRoot(), groupingInfo, 
repeatSlotIdList,
                 allSlotId, 
repeat.computeVirtualSlotValues(sortedVirtualSlots));
-        
repeatNode.setNumInstances(inputPlanFragment.getPlanRoot().getNumInstances());
         addPlanRoot(inputPlanFragment, repeatNode, repeat);
         updateLegacyPlanIdToPhysicalPlan(inputPlanFragment.getPlanRoot(), 
repeat);
         return inputPlanFragment;
@@ -1898,7 +1897,6 @@ public class PhysicalPlanTranslator extends 
DefaultPlanVisitor<PlanFragment, Pla
                 orderElementsIsNullableMatched,
                 bufferedTupleDesc
         );
-        
analyticEvalNode.setNumInstances(inputPlanFragment.getPlanRoot().getNumInstances());
         inputPlanFragment.addPlanRoot(analyticEvalNode);
         return inputPlanFragment;
     }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/planner/AggregationNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/AggregationNode.java
index 446d157a2a..5d00144f05 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/AggregationNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/AggregationNode.java
@@ -336,11 +336,6 @@ public class AggregationNode extends PlanNode {
         aggInfo.getRefdSlots(ids);
     }
 
-    @Override
-    public int getNumInstances() {
-        return children.get(0).getNumInstances();
-    }
-
     @Override
     public Set<SlotId> computeInputSlotIds(Analyzer analyzer) throws 
NotImplementedException {
         Set<SlotId> result = Sets.newHashSet();
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/planner/AssertNumRowsNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/AssertNumRowsNode.java
index c07041de9f..84ac5520ee 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/AssertNumRowsNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/AssertNumRowsNode.java
@@ -90,4 +90,9 @@ public class AssertNumRowsNode extends PlanNode {
         msg.assert_num_rows_node.setSubqueryString(subqueryString);
         msg.assert_num_rows_node.setAssertion(assertion.toThrift());
     }
+
+    @Override
+    public int getNumInstances() {
+        return 1;
+    }
 }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/planner/EmptySetNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/EmptySetNode.java
index 0497fd4838..e4b3cfd226 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/EmptySetNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/EmptySetNode.java
@@ -77,4 +77,9 @@ public class EmptySetNode extends PlanNode {
         msg.node_type = TPlanNodeType.EMPTY_SET_NODE;
     }
 
+    @Override
+    public int getNumInstances() {
+        return 1;
+    }
+
 }
diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java
index e11f674875..579b80586b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java
@@ -136,6 +136,12 @@ public abstract class PlanNode extends TreeNode<PlanNode> 
implements PlanStats {
 
     //  Node should compact data.
     protected boolean compactData;
+    // Most of the plan node has the same numInstance as its (left) child, 
except some special nodes, such as
+    // 1. scan node, whose numInstance is calculated according to its data 
distribution
+    // 2. exchange node, which is gather distribution
+    // 3. union node, whose numInstance is the sum of its children's 
numInstance
+    // ...
+    // only special nodes need to call setNumInstances() and getNumInstances() 
from attribute numInstances
     protected int numInstances;
 
     // Runtime filters assigned to this node.
@@ -847,7 +853,7 @@ public abstract class PlanNode extends TreeNode<PlanNode> 
implements PlanStats {
     }
 
     public int getNumInstances() {
-        return numInstances;
+        return this.children.get(0).getNumInstances();
     }
 
     public boolean shouldColoAgg(AggregateInfo aggregateInfo) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/RepeatNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/RepeatNode.java
index e5f7e0f04d..3c6a88cea0 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/RepeatNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/RepeatNode.java
@@ -200,9 +200,4 @@ public class RepeatNode extends PlanNode {
         }
         return output.toString();
     }
-
-    @Override
-    public int getNumInstances() {
-        return children.get(0).getNumInstances();
-    }
 }
diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/SelectNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/SelectNode.java
index 93bd430f2a..a60648bcda 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/SelectNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/SelectNode.java
@@ -107,9 +107,4 @@ public class SelectNode extends PlanNode {
         }
         return output.toString();
     }
-
-    @Override
-    public int getNumInstances() {
-        return children.get(0).getNumInstances();
-    }
 }
diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/SortNode.java 
b/fe/fe-core/src/main/java/org/apache/doris/planner/SortNode.java
index c4dbe60644..70b76fa07b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/SortNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/SortNode.java
@@ -315,11 +315,6 @@ public class SortNode extends PlanNode {
                 "[" + Joiner.on(" ").join(strings) + 
"]").addValue(super.debugString()).toString();
     }
 
-    @Override
-    public int getNumInstances() {
-        return children.get(0).getNumInstances();
-    }
-
     @Override
     public Set<SlotId> computeInputSlotIds(Analyzer analyzer) throws 
NotImplementedException {
         removeUnusedExprs();
diff --git 
a/regression-test/suites/query_p0/join/test_nestedloop_semi_anti_join.groovy 
b/regression-test/suites/query_p0/join/test_nestedloop_semi_anti_join.groovy
index d43d6f254f..61c6538217 100644
--- a/regression-test/suites/query_p0/join/test_nestedloop_semi_anti_join.groovy
+++ b/regression-test/suites/query_p0/join/test_nestedloop_semi_anti_join.groovy
@@ -77,7 +77,6 @@ suite("test_nestedloop_semi_anti_join", "query_p0") {
         select * from ${tbl1} where user_id not in (select user_id from 
${tbl2} where ${tbl1}.user_id >  ${tbl2}.user_id) order by ${tbl1}.user_id;
     """
     sql "DROP TABLE IF EXISTS ${tbl1}"
-    sql "DROP TABLE IF EXISTS ${tbl2}"
 
     sql """
         CREATE TABLE ${tbl1} (id int)
@@ -90,5 +89,4 @@ suite("test_nestedloop_semi_anti_join", "query_p0") {
     qt_nlj_left_semi "select a.id\n" +
             "from ${tbl1} a\n" +
             "join (select id from ${tbl1} where id = (select 1)) b on a.id = 
b.id"
-    sql "DROP TABLE IF EXISTS ${tbl1}"
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to