From ddcfba0368c9273cc202622318c0db851251f08c Mon Sep 17 00:00:00 2001 From: jakevin Date: Mon, 18 Dec 2023 20:47:17 +0800 Subject: [PATCH] [chore](Nereids): remove SemiJoinCommute in rewriter (#28563) --- .../java/org/apache/doris/nereids/jobs/executor/Analyzer.java | 4 ++-- .../java/org/apache/doris/nereids/jobs/executor/Rewriter.java | 2 -- .../rules/rewrite/{JoinCommute.java => SemiJoinCommute.java} | 2 +- .../apache/doris/nereids/rules/rewrite/ReorderJoinTest.java | 1 + 4 files changed, 4 insertions(+), 5 deletions(-) rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{JoinCommute.java => SemiJoinCommute.java} (96%) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Analyzer.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Analyzer.java index b78cb09360..7f579f3533 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Analyzer.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Analyzer.java @@ -43,7 +43,7 @@ import org.apache.doris.nereids.rules.analysis.ReplaceExpressionByChildOutput; import org.apache.doris.nereids.rules.analysis.ResolveOrdinalInOrderByAndGroupBy; import org.apache.doris.nereids.rules.analysis.SubqueryToApply; import org.apache.doris.nereids.rules.analysis.UserAuthentication; -import org.apache.doris.nereids.rules.rewrite.JoinCommute; +import org.apache.doris.nereids.rules.rewrite.SemiJoinCommute; import java.util.List; import java.util.Objects; @@ -124,7 +124,7 @@ public class Analyzer extends AbstractBatchJobExecutor { bottomUp(new CheckAnalysis()), topDown(new EliminateGroupByConstant()), topDown(new NormalizeAggregate()), - bottomUp(new JoinCommute()), + bottomUp(new SemiJoinCommute()), bottomUp( new CollectSubQueryAlias(), new CollectJoinConstraint() diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Rewriter.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Rewriter.java index 10da21d724..9104869387 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Rewriter.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Rewriter.java @@ -73,7 +73,6 @@ import org.apache.doris.nereids.rules.rewrite.InferFilterNotNull; import org.apache.doris.nereids.rules.rewrite.InferJoinNotNull; import org.apache.doris.nereids.rules.rewrite.InferPredicates; import org.apache.doris.nereids.rules.rewrite.InferSetOperatorDistinct; -import org.apache.doris.nereids.rules.rewrite.JoinCommute; import org.apache.doris.nereids.rules.rewrite.LimitSortToTopN; import org.apache.doris.nereids.rules.rewrite.MergeFilters; import org.apache.doris.nereids.rules.rewrite.MergeOneRowRelationIntoUnion; @@ -229,7 +228,6 @@ public class Rewriter extends AbstractBatchJobExecutor { ), // push down SEMI Join bottomUp( - new JoinCommute(), new TransposeSemiJoinLogicalJoin(), new TransposeSemiJoinLogicalJoinProject(), new TransposeSemiJoinAgg(), diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/JoinCommute.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/SemiJoinCommute.java similarity index 96% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/JoinCommute.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/SemiJoinCommute.java index 4611851787..6655753572 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/JoinCommute.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/SemiJoinCommute.java @@ -27,7 +27,7 @@ import org.apache.doris.qe.ConnectContext; * RightAntiJoin -> LeftAntiJoin * RightOuterJoin -> LeftOuterJoin */ -public class JoinCommute extends OneRewriteRuleFactory { +public class SemiJoinCommute extends OneRewriteRuleFactory { @Override public Rule build() { return logicalJoin() diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ReorderJoinTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ReorderJoinTest.java index 9e7a1ed9ff..770181c7ac 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ReorderJoinTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ReorderJoinTest.java @@ -124,6 +124,7 @@ class ReorderJoinTest implements MemoPatternMatchSupported { .filter(new EqualTo(scan3.getOutput().get(0), scan1.getOutput().get(0))) .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), plan2) + .applyBottomUp(new SemiJoinCommute()) .rewrite() .matchesFromRoot( logicalProject(