diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/NereidsRewriter.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/NereidsRewriter.java index b43621562c..e2e99594a3 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/NereidsRewriter.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/NereidsRewriter.java @@ -67,13 +67,13 @@ import org.apache.doris.nereids.rules.rewrite.logical.PushFilterInsideJoin; import org.apache.doris.nereids.rules.rewrite.logical.PushdownFilterThroughProject; import org.apache.doris.nereids.rules.rewrite.logical.PushdownLimit; import org.apache.doris.nereids.rules.rewrite.logical.ReorderJoin; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTranspose; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTransposeProject; import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinCommute; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinLogicalJoinTranspose; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinLogicalJoinTransposeProject; import org.apache.doris.nereids.rules.rewrite.logical.SimplifyAggGroupBy; import org.apache.doris.nereids.rules.rewrite.logical.SplitLimit; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinAgg; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinAggProject; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinLogicalJoin; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinLogicalJoinProject; import com.google.common.collect.ImmutableList; @@ -183,10 +183,10 @@ public class NereidsRewriter extends BatchRewriteJob { // pushdown SEMI Join bottomUp( new SemiJoinCommute(), - new SemiJoinLogicalJoinTranspose(), - new SemiJoinLogicalJoinTransposeProject(), - new SemiJoinAggTranspose(), - new SemiJoinAggTransposeProject() + new TransposeSemiJoinLogicalJoin(), + new TransposeSemiJoinLogicalJoinProject(), + new TransposeSemiJoinAgg(), + new TransposeSemiJoinAggProject() ), topDown( diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleSet.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleSet.java index 8b9fb527d8..ccb6744a66 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleSet.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleSet.java @@ -17,10 +17,10 @@ package org.apache.doris.nereids.rules; -import org.apache.doris.nereids.rules.exploration.AggSemiJoinTranspose; -import org.apache.doris.nereids.rules.exploration.AggSemiJoinTransposeProject; import org.apache.doris.nereids.rules.exploration.MergeProjectsCBO; import org.apache.doris.nereids.rules.exploration.PushdownFilterThroughProjectCBO; +import org.apache.doris.nereids.rules.exploration.TransposeAggSemiJoin; +import org.apache.doris.nereids.rules.exploration.TransposeAggSemiJoinProject; import org.apache.doris.nereids.rules.exploration.join.InnerJoinLAsscom; import org.apache.doris.nereids.rules.exploration.join.InnerJoinLAsscomProject; import org.apache.doris.nereids.rules.exploration.join.InnerJoinLeftAssociate; @@ -101,8 +101,8 @@ public class RuleSet { .add(LogicalJoinSemiJoinTransposeProject.INSTANCE) .add(PushdownProjectThroughInnerJoin.INSTANCE) .add(PushdownProjectThroughSemiJoin.INSTANCE) - .add(AggSemiJoinTranspose.INSTANCE) - .add(AggSemiJoinTransposeProject.INSTANCE) + .add(TransposeAggSemiJoin.INSTANCE) + .add(TransposeAggSemiJoinProject.INSTANCE) .build(); public static final List PUSH_DOWN_FILTERS = ImmutableList.of( diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleType.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleType.java index 9db6e43f5d..b376824e0d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleType.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/RuleType.java @@ -137,11 +137,11 @@ public enum RuleType { PUSHDOWN_FILTER_THROUGH_SET_OPERATION(RuleTypeClass.REWRITE), COLUMN_PRUNING(RuleTypeClass.REWRITE), - LOGICAL_SEMI_JOIN_LOGICAL_JOIN_TRANSPOSE(RuleTypeClass.REWRITE), - LOGICAL_SEMI_JOIN_LOGICAL_JOIN_TRANSPOSE_PROJECT(RuleTypeClass.REWRITE), + TRANSPOSE_LOGICAL_SEMI_JOIN_LOGICAL_JOIN(RuleTypeClass.REWRITE), + TRANSPOSE_LOGICAL_SEMI_JOIN_LOGICAL_JOIN_PROJECT(RuleTypeClass.REWRITE), LOGICAL_SEMI_JOIN_COMMUTE(RuleTypeClass.REWRITE), - LOGICAL_SEMI_JOIN_AGG_TRANSPOSE(RuleTypeClass.REWRITE), - LOGICAL_SEMI_JOIN_AGG_TRANSPOSE_PROJECT(RuleTypeClass.REWRITE), + TRANSPOSE_LOGICAL_SEMI_JOIN_AGG(RuleTypeClass.REWRITE), + TRANSPOSE_LOGICAL_SEMI_JOIN_AGG_PROJECT(RuleTypeClass.REWRITE), // expression of plan rewrite REWRITE_ONE_ROW_RELATION_EXPRESSION(RuleTypeClass.REWRITE), @@ -241,8 +241,9 @@ public enum RuleType { LOGICAL_INNER_JOIN_LEFT_ASSOCIATIVE_PROJECT(RuleTypeClass.EXPLORATION), LOGICAL_INNER_JOIN_RIGHT_ASSOCIATIVE(RuleTypeClass.EXPLORATION), LOGICAL_INNER_JOIN_RIGHT_ASSOCIATIVE_PROJECT(RuleTypeClass.EXPLORATION), - LOGICAL_AGG_SEMI_JOIN_TRANSPOSE(RuleTypeClass.EXPLORATION), - LOGICAL_AGG_SEMI_JOIN_TRANSPOSE_PROJECT(RuleTypeClass.EXPLORATION), + TRANSPOSE_LOGICAL_AGG_SEMI_JOIN(RuleTypeClass.EXPLORATION), + TRANSPOSE_LOGICAL_AGG_SEMI_JOIN_PROJECT(RuleTypeClass.EXPLORATION), + TRANSPOSE_LOGICAL_JOIN_UNION(RuleTypeClass.EXPLORATION), PUSH_DOWN_PROJECT_THROUGH_SEMI_JOIN(RuleTypeClass.EXPLORATION), PUSH_DOWN_PROJECT_THROUGH_INNER_JOIN(RuleTypeClass.EXPLORATION), EAGER_COUNT(RuleTypeClass.EXPLORATION), diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/LogicalSubQueryAliasToLogicalProject.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/LogicalSubQueryAliasToLogicalProject.java index 2f39a493e2..b8a0566efb 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/LogicalSubQueryAliasToLogicalProject.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/LogicalSubQueryAliasToLogicalProject.java @@ -19,10 +19,9 @@ package org.apache.doris.nereids.rules.analysis; import org.apache.doris.nereids.rules.Rule; import org.apache.doris.nereids.rules.RuleType; -import org.apache.doris.nereids.trees.expressions.Slot; import org.apache.doris.nereids.trees.plans.logical.LogicalProject; -import java.util.List; +import com.google.common.collect.ImmutableList; /** * Eliminate the logical sub query and alias node after analyze and before rewrite @@ -34,10 +33,8 @@ public class LogicalSubQueryAliasToLogicalProject extends OneAnalysisRuleFactory @Override public Rule build() { return RuleType.LOGICAL_SUB_QUERY_ALIAS_TO_LOGICAL_PROJECT.build( - logicalSubQueryAlias().then(alias -> { - List output = alias.getOutput(); - return new LogicalProject<>((List) output, alias.child()); - }) + logicalSubQueryAlias().then( + alias -> new LogicalProject<>(ImmutableList.copyOf(alias.getOutput()), alias.child())) ); } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTranspose.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoin.java similarity index 81% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTranspose.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoin.java index de995cee36..4437d94b01 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTranspose.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoin.java @@ -19,15 +19,15 @@ package org.apache.doris.nereids.rules.exploration; import org.apache.doris.nereids.rules.Rule; import org.apache.doris.nereids.rules.RuleType; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTranspose; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinAgg; import org.apache.doris.nereids.trees.plans.GroupPlan; import org.apache.doris.nereids.trees.plans.logical.LogicalJoin; /** * Pull up SemiJoin through Agg. */ -public class AggSemiJoinTranspose extends OneExplorationRuleFactory { - public static final AggSemiJoinTranspose INSTANCE = new AggSemiJoinTranspose(); +public class TransposeAggSemiJoin extends OneExplorationRuleFactory { + public static final TransposeAggSemiJoin INSTANCE = new TransposeAggSemiJoin(); @Override public Rule build() { @@ -35,11 +35,11 @@ public class AggSemiJoinTranspose extends OneExplorationRuleFactory { .when(agg -> agg.child().getJoinType().isLeftSemiOrAntiJoin()) .then(agg -> { LogicalJoin join = agg.child(); - if (!SemiJoinAggTranspose.canTranspose(agg, join)) { + if (!TransposeSemiJoinAgg.canTranspose(agg, join)) { return null; } return join.withChildren(agg.withChildren(join.left()), join.right()); }) - .toRule(RuleType.LOGICAL_AGG_SEMI_JOIN_TRANSPOSE); + .toRule(RuleType.TRANSPOSE_LOGICAL_AGG_SEMI_JOIN); } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeProject.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinProject.java similarity index 83% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeProject.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinProject.java index 45b687cc60..21fb04ecd7 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeProject.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinProject.java @@ -19,7 +19,7 @@ package org.apache.doris.nereids.rules.exploration; import org.apache.doris.nereids.rules.Rule; import org.apache.doris.nereids.rules.RuleType; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTranspose; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinAgg; import org.apache.doris.nereids.trees.plans.GroupPlan; import org.apache.doris.nereids.trees.plans.logical.LogicalJoin; import org.apache.doris.nereids.trees.plans.logical.LogicalProject; @@ -27,8 +27,8 @@ import org.apache.doris.nereids.trees.plans.logical.LogicalProject; /** * Pull up SemiJoin through Agg. */ -public class AggSemiJoinTransposeProject extends OneExplorationRuleFactory { - public static final AggSemiJoinTransposeProject INSTANCE = new AggSemiJoinTransposeProject(); +public class TransposeAggSemiJoinProject extends OneExplorationRuleFactory { + public static final TransposeAggSemiJoinProject INSTANCE = new TransposeAggSemiJoinProject(); @Override public Rule build() { @@ -37,11 +37,11 @@ public class AggSemiJoinTransposeProject extends OneExplorationRuleFactory { .then(agg -> { LogicalProject> project = agg.child(); LogicalJoin join = project.child(); - if (!SemiJoinAggTranspose.canTranspose(agg, join)) { + if (!TransposeSemiJoinAgg.canTranspose(agg, join)) { return null; } return join.withChildren(agg.withChildren(project.withChildren(join.left())), join.right()); }) - .toRule(RuleType.LOGICAL_AGG_SEMI_JOIN_TRANSPOSE_PROJECT); + .toRule(RuleType.TRANSPOSE_LOGICAL_AGG_SEMI_JOIN_PROJECT); } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/BuildAggForUnion.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/BuildAggForUnion.java index 628944e4b8..3958f58bb2 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/BuildAggForUnion.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/BuildAggForUnion.java @@ -24,6 +24,8 @@ import org.apache.doris.nereids.trees.plans.algebra.SetOperation.Qualifier; import org.apache.doris.nereids.trees.plans.logical.LogicalAggregate; import org.apache.doris.nereids.trees.plans.logical.LogicalUnion; +import com.google.common.collect.ImmutableList; + import java.util.Optional; /** @@ -34,7 +36,7 @@ public class BuildAggForUnion extends OneRewriteRuleFactory { public Rule build() { return logicalUnion().whenNot(LogicalUnion::hasBuildAgg).then(union -> { if (union.getQualifier() == Qualifier.DISTINCT) { - return new LogicalAggregate(union.getOutputs(), union.getOutputs(), + return new LogicalAggregate<>(ImmutableList.copyOf(union.getOutputs()), union.getOutputs(), true, Optional.empty(), union.withHasBuildAgg()); } return union; diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTranspose.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAgg.java similarity index 94% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTranspose.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAgg.java index 92a5a9e15a..f642931a6f 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTranspose.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAgg.java @@ -31,7 +31,7 @@ import java.util.Set; /** * Pushdown semi-join through agg */ -public class SemiJoinAggTranspose extends OneRewriteRuleFactory { +public class TransposeSemiJoinAgg extends OneRewriteRuleFactory { @Override public Rule build() { return logicalJoin(logicalAggregate(), any()) @@ -43,7 +43,7 @@ public class SemiJoinAggTranspose extends OneRewriteRuleFactory { return null; } return aggregate.withChildren(join.withChildren(aggregate.child(), join.right())); - }).toRule(RuleType.LOGICAL_SEMI_JOIN_AGG_TRANSPOSE); + }).toRule(RuleType.TRANSPOSE_LOGICAL_SEMI_JOIN_AGG); } /** diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProject.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProject.java similarity index 91% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProject.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProject.java index 64c234c0f6..d8edf9a07e 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProject.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProject.java @@ -29,7 +29,7 @@ import org.apache.doris.qe.ConnectContext; /** * Pushdown semi-join through agg */ -public class SemiJoinAggTransposeProject extends OneRewriteRuleFactory { +public class TransposeSemiJoinAggProject extends OneRewriteRuleFactory { @Override public Rule build() { return logicalJoin(logicalProject(logicalAggregate()), any()) @@ -40,11 +40,11 @@ public class SemiJoinAggTransposeProject extends OneRewriteRuleFactory { .then(join -> { LogicalProject> project = join.left(); LogicalAggregate aggregate = project.child(); - if (!SemiJoinAggTranspose.canTranspose(aggregate, join)) { + if (!TransposeSemiJoinAgg.canTranspose(aggregate, join)) { return null; } Plan newPlan = aggregate.withChildren(join.withChildren(aggregate.child(), join.right())); return project.withChildren(newPlan); - }).toRule(RuleType.LOGICAL_SEMI_JOIN_AGG_TRANSPOSE_PROJECT); + }).toRule(RuleType.TRANSPOSE_LOGICAL_SEMI_JOIN_AGG_PROJECT); } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTranspose.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoin.java similarity index 92% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTranspose.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoin.java index c18be68787..4af083b720 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTranspose.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoin.java @@ -20,7 +20,7 @@ package org.apache.doris.nereids.rules.rewrite.logical; import org.apache.doris.nereids.rules.Rule; import org.apache.doris.nereids.rules.RuleType; import org.apache.doris.nereids.rules.rewrite.OneRewriteRuleFactory; -import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinLogicalJoinTransposeProject.ContainsType; +import org.apache.doris.nereids.rules.rewrite.logical.TransposeSemiJoinLogicalJoinProject.ContainsType; import org.apache.doris.nereids.trees.expressions.ExprId; import org.apache.doris.nereids.trees.plans.JoinType; import org.apache.doris.nereids.trees.plans.Plan; @@ -35,7 +35,7 @@ import java.util.Set; *
  • SemiJoin(LogicalJoin(X, Y), Z) -> LogicalJoin(X, SemiJoin(Y, Z)) * */ -public class SemiJoinLogicalJoinTranspose extends OneRewriteRuleFactory { +public class TransposeSemiJoinLogicalJoin extends OneRewriteRuleFactory { @Override public Rule build() { return logicalJoin(logicalJoin(), any()) @@ -53,7 +53,7 @@ public class SemiJoinLogicalJoinTranspose extends OneRewriteRuleFactory { Plan c = topSemiJoin.right(); Set conjunctsIds = topSemiJoin.getConditionExprId(); - ContainsType containsType = SemiJoinLogicalJoinTransposeProject.containsChildren(conjunctsIds, + ContainsType containsType = TransposeSemiJoinLogicalJoinProject.containsChildren(conjunctsIds, a.getOutputExprIdSet(), b.getOutputExprIdSet()); if (containsType == ContainsType.ALL) { return null; @@ -87,6 +87,6 @@ public class SemiJoinLogicalJoinTranspose extends OneRewriteRuleFactory { Plan newBottomSemiJoin = topSemiJoin.withChildren(b, c); return bottomJoin.withChildren(a, newBottomSemiJoin); } - }).toRule(RuleType.LOGICAL_SEMI_JOIN_LOGICAL_JOIN_TRANSPOSE); + }).toRule(RuleType.TRANSPOSE_LOGICAL_SEMI_JOIN_LOGICAL_JOIN); } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProject.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProject.java similarity index 97% rename from fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProject.java rename to fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProject.java index 299e5323b0..d102efe756 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProject.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProject.java @@ -39,7 +39,7 @@ import java.util.Set; *
  • SemiJoin(LogicalJoin(X, Y), Z) -> LogicalJoin(X, SemiJoin(Y, Z)) * */ -public class SemiJoinLogicalJoinTransposeProject extends OneRewriteRuleFactory { +public class TransposeSemiJoinLogicalJoinProject extends OneRewriteRuleFactory { @Override public Rule build() { return logicalJoin(logicalProject(logicalJoin()), any()) @@ -99,7 +99,7 @@ public class SemiJoinLogicalJoinTransposeProject extends OneRewriteRuleFactory { Plan newTopJoin = bottomJoin.withChildren(a, newBottomSemiJoin); return project.withChildren(newTopJoin); } - }).toRule(RuleType.LOGICAL_SEMI_JOIN_LOGICAL_JOIN_TRANSPOSE_PROJECT); + }).toRule(RuleType.TRANSPOSE_LOGICAL_SEMI_JOIN_LOGICAL_JOIN_PROJECT); } enum ContainsType { diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinTest.java similarity index 95% rename from fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeTest.java rename to fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinTest.java index d88e53b16e..9c1e19282a 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/AggSemiJoinTransposeTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/exploration/TransposeAggSemiJoinTest.java @@ -32,7 +32,7 @@ import org.apache.doris.nereids.util.PlanConstructor; import com.google.common.collect.ImmutableList; import org.junit.jupiter.api.Test; -class AggSemiJoinTransposeTest implements MemoPatternMatchSupported { +class TransposeAggSemiJoinTest implements MemoPatternMatchSupported { private final LogicalOlapScan scan1 = PlanConstructor.newLogicalOlapScan(0, "t1", 0); private final LogicalOlapScan scan2 = PlanConstructor.newLogicalOlapScan(1, "t2", 0); @@ -48,7 +48,7 @@ class AggSemiJoinTransposeTest implements MemoPatternMatchSupported { ) .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), plan) - .applyExploration(AggSemiJoinTranspose.INSTANCE.build()) + .applyExploration(TransposeAggSemiJoin.INSTANCE.build()) .printlnExploration() .matchesExploration( leftSemiLogicalJoin( diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProjectTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProjectTest.java similarity index 94% rename from fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProjectTest.java rename to fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProjectTest.java index d3cad3cae4..d41c0f894b 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeProjectTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggProjectTest.java @@ -30,7 +30,7 @@ import org.apache.doris.nereids.util.PlanConstructor; import com.google.common.collect.ImmutableList; import org.junit.jupiter.api.Test; -class SemiJoinAggTransposeProjectTest implements MemoPatternMatchSupported { +class TransposeSemiJoinAggProjectTest implements MemoPatternMatchSupported { private final LogicalOlapScan scan1 = PlanConstructor.newLogicalOlapScan(0, "t1", 0); private final LogicalOlapScan scan2 = PlanConstructor.newLogicalOlapScan(1, "t2", 0); @@ -42,7 +42,7 @@ class SemiJoinAggTransposeProjectTest implements MemoPatternMatchSupported { .join(scan2, JoinType.LEFT_SEMI_JOIN, Pair.of(0, 0)) .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), plan) - .applyTopDown(new SemiJoinAggTransposeProject()) + .applyTopDown(new TransposeSemiJoinAggProject()) .printlnTree() .matchesFromRoot( logicalProject( diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggTest.java similarity index 94% rename from fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeTest.java rename to fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggTest.java index 264b6fdc0d..01cf000e34 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinAggTransposeTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinAggTest.java @@ -30,7 +30,7 @@ import org.apache.doris.nereids.util.PlanConstructor; import com.google.common.collect.ImmutableList; import org.junit.jupiter.api.Test; -class SemiJoinAggTransposeTest implements MemoPatternMatchSupported { +class TransposeSemiJoinAggTest implements MemoPatternMatchSupported { private final LogicalOlapScan scan1 = PlanConstructor.newLogicalOlapScan(0, "t1", 0); private final LogicalOlapScan scan2 = PlanConstructor.newLogicalOlapScan(1, "t2", 0); @@ -41,7 +41,7 @@ class SemiJoinAggTransposeTest implements MemoPatternMatchSupported { .join(scan2, JoinType.LEFT_SEMI_JOIN, Pair.of(0, 0)) .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), plan) - .applyTopDown(new SemiJoinAggTranspose()) + .applyTopDown(new TransposeSemiJoinAgg()) .matchesFromRoot( logicalAggregate( leftSemiLogicalJoin() diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProjectTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProjectTest.java similarity index 96% rename from fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProjectTest.java rename to fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProjectTest.java index 88ba0417f0..915371c4f4 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeProjectTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinProjectTest.java @@ -30,7 +30,7 @@ import org.apache.doris.nereids.util.PlanConstructor; import com.google.common.collect.ImmutableList; import org.junit.jupiter.api.Test; -class SemiJoinLogicalJoinTransposeProjectTest implements MemoPatternMatchSupported { +class TransposeSemiJoinLogicalJoinProjectTest implements MemoPatternMatchSupported { private static final LogicalOlapScan scan1 = PlanConstructor.newLogicalOlapScan(0, "t1", 0); private static final LogicalOlapScan scan2 = PlanConstructor.newLogicalOlapScan(1, "t2", 0); private static final LogicalOlapScan scan3 = PlanConstructor.newLogicalOlapScan(2, "t3", 0); @@ -53,7 +53,7 @@ class SemiJoinLogicalJoinTransposeProjectTest implements MemoPatternMatchSupport .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), topJoin) - .applyTopDown(new SemiJoinLogicalJoinTransposeProject()) + .applyTopDown(new TransposeSemiJoinLogicalJoinProject()) .matchesFromRoot( logicalProject( innerLogicalJoin( @@ -85,7 +85,7 @@ class SemiJoinLogicalJoinTransposeProjectTest implements MemoPatternMatchSupport .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), topJoin) - .applyTopDown(new SemiJoinLogicalJoinTransposeProject()) + .applyTopDown(new TransposeSemiJoinLogicalJoinProject()) .matchesFromRoot( logicalProject( logicalJoin( diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinTest.java similarity index 95% rename from fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeTest.java rename to fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinTest.java index cccb8890b7..2432150b96 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/SemiJoinLogicalJoinTransposeTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/TransposeSemiJoinLogicalJoinTest.java @@ -31,7 +31,7 @@ import org.apache.doris.nereids.util.PlanConstructor; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -public class SemiJoinLogicalJoinTransposeTest implements MemoPatternMatchSupported { +public class TransposeSemiJoinLogicalJoinTest implements MemoPatternMatchSupported { private static final LogicalOlapScan scan1 = PlanConstructor.newLogicalOlapScan(0, "t1", 0); private static final LogicalOlapScan scan2 = PlanConstructor.newLogicalOlapScan(1, "t2", 0); private static final LogicalOlapScan scan3 = PlanConstructor.newLogicalOlapScan(2, "t3", 0); @@ -51,7 +51,7 @@ public class SemiJoinLogicalJoinTransposeTest implements MemoPatternMatchSupport .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), topJoin) - .applyTopDown(new SemiJoinLogicalJoinTranspose()) + .applyTopDown(new TransposeSemiJoinLogicalJoin()) .matchesFromRoot( innerLogicalJoin( leftSemiLogicalJoin( @@ -78,7 +78,7 @@ public class SemiJoinLogicalJoinTransposeTest implements MemoPatternMatchSupport .build(); PlanChecker.from(MemoTestUtils.createConnectContext(), topJoin) - .applyTopDown(new SemiJoinLogicalJoinTranspose()) + .applyTopDown(new TransposeSemiJoinLogicalJoin()) .checkMemo(memo -> { Group root = memo.getRoot(); Assertions.assertEquals(1, root.getLogicalExpressions().size());