This is an automated email from the ASF dual-hosted git repository. dataroaring pushed a commit to branch branch-3.0 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.0 by this push: new d46be2c747d branch-3.0: [fix](pipelinex) fix null aware left anti join instance num #51053 (#51061) d46be2c747d is described below commit d46be2c747db68fccdf1942317aebf94db2900c2 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> AuthorDate: Wed Jun 11 10:48:24 2025 +0800 branch-3.0: [fix](pipelinex) fix null aware left anti join instance num #51053 (#51061) Cherry-picked from #51053 Co-authored-by: yujun <yu...@selectdb.com> --- .../src/main/java/org/apache/doris/planner/HashJoinNode.java | 8 -------- .../src/main/java/org/apache/doris/planner/PlanFragment.java | 4 +++- fe/fe-core/src/main/java/org/apache/doris/planner/PlanNode.java | 4 ---- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/HashJoinNode.java b/fe/fe-core/src/main/java/org/apache/doris/planner/HashJoinNode.java index c3cbf2afce1..b664b7a26c8 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/planner/HashJoinNode.java +++ b/fe/fe-core/src/main/java/org/apache/doris/planner/HashJoinNode.java @@ -959,12 +959,4 @@ public class HashJoinNode extends JoinNodeBase { return slotRef; } } - - @Override - public boolean isNullAwareLeftAntiJoin() { - if (joinOp == JoinOperator.NULL_AWARE_LEFT_ANTI_JOIN) { - return true; - } - return children.stream().anyMatch(PlanNode::isNullAwareLeftAntiJoin); - } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/PlanFragment.java b/fe/fe-core/src/main/java/org/apache/doris/planner/PlanFragment.java index fe386acdaf2..d845b2bfc35 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/planner/PlanFragment.java +++ b/fe/fe-core/src/main/java/org/apache/doris/planner/PlanFragment.java @@ -21,6 +21,7 @@ package org.apache.doris.planner; import org.apache.doris.analysis.Expr; +import org.apache.doris.analysis.JoinOperator; import org.apache.doris.analysis.QueryStmt; import org.apache.doris.analysis.SlotDescriptor; import org.apache.doris.analysis.SlotRef; @@ -501,7 +502,8 @@ public class PlanFragment extends TreeNode<PlanFragment> { } public boolean hasNullAwareLeftAntiJoin() { - return planRoot.isNullAwareLeftAntiJoin(); + return planRoot.anyMatch(plan -> plan instanceof JoinNodeBase + && ((JoinNodeBase) plan).getJoinOp() == JoinOperator.NULL_AWARE_LEFT_ANTI_JOIN); } public boolean useSerialSource(ConnectContext context) { 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 c6b06e7576c..31160b594d3 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 @@ -281,10 +281,6 @@ public abstract class PlanNode extends TreeNode<PlanNode> implements PlanStats { this.fragment = fragment; } - public boolean isNullAwareLeftAntiJoin() { - return children.stream().anyMatch(PlanNode::isNullAwareLeftAntiJoin); - } - public PlanFragment getFragment() { return fragment; } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org