You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2023/06/14 07:57:51 UTC
[doris] branch master updated (0f470fec0e -> 54d42244fe)
This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
from 0f470fec0e [Bug](topn opt) Fix Two-Phase read when some rowset swept (#20732)
add 54d42244fe [feature](Nereids) add cbo rewrite framework (#20746)
No new revisions were added by this update.
Summary of changes:
.../doris/nereids/{analyzer => }/CTEContext.java | 32 +--
.../org/apache/doris/nereids/CascadesContext.java | 62 +++--
.../org/apache/doris/nereids/NereidsPlanner.java | 67 +-----
.../java/org/apache/doris/nereids/PlanContext.java | 1 +
.../java/org/apache/doris/nereids/PlanSource.java | 22 --
.../org/apache/doris/nereids/analyzer/Scope.java | 21 +-
.../org/apache/doris/nereids/jobs/JobContext.java | 17 ++
.../nereids/jobs/batch/CascadesOptimizer.java | 42 ----
.../batch/CheckLegalityBeforeTypeCoercion.java | 34 ---
.../AbstractBatchJobExecutor.java} | 47 ++--
.../executor/Analyzer.java} | 12 +-
.../doris/nereids/jobs/executor/Optimizer.java | 98 ++++++++
.../Rewriter.java} | 254 ++++++++++-----------
.../nereids/jobs/rewrite/CostBasedRewriteJob.java | 90 ++++++++
.../nereids/jobs/rewrite/CustomRewriteJob.java | 3 +-
.../jobs/rewrite/PlanTreeRewriteBottomUpJob.java | 6 +-
.../nereids/jobs/rewrite/PlanTreeRewriteJob.java | 15 +-
.../jobs/rewrite/PlanTreeRewriteTopDownJob.java | 5 +-
.../nereids/jobs/rewrite/RewriteBottomUpJob.java | 2 +
.../nereids/jobs/{ => rewrite}/RewriteJob.java | 5 +-
.../nereids/jobs/rewrite/RewriteJobContext.java | 1 +
.../nereids/jobs/rewrite/RewriteTopDownJob.java | 2 +
.../jobs/rewrite/RootPlanTreeRewriteJob.java | 74 +-----
.../jobs/{ => rewrite}/TopicRewriteJob.java | 10 +-
.../java/org/apache/doris/nereids/memo/Memo.java | 2 +-
.../doris/nereids/pattern/MatchingContext.java | 2 +-
.../org/apache/doris/nereids/rules/ProxyRule.java | 45 ----
.../org/apache/doris/nereids/rules/RuleSet.java | 43 ++--
.../doris/nereids/rules/analysis/BindRelation.java | 2 +-
.../nereids/rules/analysis/NormalizeRepeat.java | 4 +-
.../doris/nereids/rules/analysis/RegisterCTE.java | 10 +-
.../nereids/rules/analysis/SubExprAnalyzer.java | 2 +-
.../rules/exploration/MergeProjectsCBO.java | 2 +-
.../rules/exploration/TransposeAggSemiJoin.java | 2 +-
.../exploration/TransposeAggSemiJoinProject.java | 2 +-
.../expression}/CheckLegalityAfterRewrite.java | 4 +-
.../rules/implementation/AggregateStrategies.java | 2 +-
.../LogicalWindowToPhysicalWindow.java | 4 +-
.../rewrite/{logical => }/AdjustNullable.java | 2 +-
.../AggScalarSubQueryToWindowFunction.java | 2 +-
.../rewrite/{logical => }/BuildAggForUnion.java | 3 +-
.../BuildCTEAnchorAndCTEProducer.java | 3 +-
.../rewrite/{logical => }/CTEProducerRewrite.java | 9 +-
.../CheckAndStandardizeWindowFunctionAndFrame.java | 3 +-
.../rewrite/{logical => }/CheckDataTypes.java | 2 +-
.../rules/rewrite/{logical => }/ColumnPruning.java | 4 +-
.../{logical => }/ConvertInnerOrCrossJoin.java | 3 +-
.../{logical => }/CountDistinctRewrite.java | 3 +-
.../rewrite/{logical => }/EliminateAggregate.java | 3 +-
.../{logical => }/EliminateDedupJoinCondition.java | 3 +-
.../rewrite/{logical => }/EliminateFilter.java | 3 +-
.../{logical => }/EliminateGroupByConstant.java | 3 +-
.../rewrite/{logical => }/EliminateLimit.java | 3 +-
.../{logical => }/EliminateLimitUnderApply.java | 3 +-
.../rewrite/{logical => }/EliminateNotNull.java | 3 +-
.../EliminateNullAwareLeftAntiJoin.java | 3 +-
.../{logical => }/EliminateOrderByConstant.java | 3 +-
.../rewrite/{logical => }/EliminateOuterJoin.java | 3 +-
.../{logical => }/EliminateSortUnderApply.java | 3 +-
.../{logical => }/EliminateUnnecessaryProject.java | 2 +-
.../{logical => }/EnsureProjectOnTopJoin.java | 2 +-
.../rewrite/{logical => }/ExistsApplyToJoin.java | 3 +-
.../ExtractAndNormalizeWindowExpression.java | 3 +-
.../{logical => }/ExtractFilterFromCrossJoin.java | 3 +-
...xtractSingleTableExpressionFromDisjunction.java | 3 +-
.../{logical => }/FindHashConditionForJoin.java | 3 +-
.../HideOneRowRelationUnderUnion.java | 2 +-
.../rules/rewrite/{logical => }/InApplyToJoin.java | 3 +-
.../rewrite/{logical => }/InferAggNotNull.java | 3 +-
.../rewrite/{logical => }/InferFilterNotNull.java | 3 +-
.../rewrite/{logical => }/InferJoinNotNull.java | 3 +-
.../rewrite/{logical => }/InferPredicates.java | 2 +-
.../rules/rewrite/{logical => }/InlineCTE.java | 10 +-
.../rules/rewrite/{logical => }/MergeFilters.java | 3 +-
.../rewrite/{logical => }/MergeGenerates.java | 3 +-
.../rules/rewrite/{logical => }/MergeLimits.java | 3 +-
.../rules/rewrite/{logical => }/MergeProjects.java | 3 +-
.../rewrite/{logical => }/MergeSetOperations.java | 3 +-
.../rules/rewrite/{logical => }/MultiJoin.java | 2 +-
.../rewrite/{logical => }/NormalizeAggregate.java | 3 +-
.../rules/rewrite/{logical => }/NormalizeSort.java | 3 +-
.../rewrite/{logical => }/NormalizeToSlot.java | 2 +-
.../{logical => }/PredicatePropagation.java | 2 +-
.../{logical => }/PruneFileScanPartition.java | 3 +-
.../{logical => }/PruneOlapScanPartition.java | 3 +-
.../rewrite/{logical => }/PruneOlapScanTablet.java | 3 +-
...CorrelatedFilterUnderApplyAggregateProject.java | 3 +-
.../rewrite/{logical => }/PullUpPredicates.java | 2 +-
.../{logical => }/PullUpProjectUnderApply.java | 3 +-
.../{logical => }/PushFilterInsideJoin.java | 3 +-
.../{logical => }/PushdownAliasIntoUnionAll.java | 3 +-
.../{logical => }/PushdownAliasThroughJoin.java | 3 +-
.../PushdownExpressionsInHashCondition.java | 3 +-
.../PushdownFilterThroughAggregation.java | 3 +-
.../{logical => }/PushdownFilterThroughCTE.java | 3 +-
.../PushdownFilterThroughCTEAnchor.java | 3 +-
.../{logical => }/PushdownFilterThroughJoin.java | 3 +-
.../PushdownFilterThroughProject.java | 3 +-
.../{logical => }/PushdownFilterThroughRepeat.java | 3 +-
.../PushdownFilterThroughSetOperation.java | 3 +-
.../{logical => }/PushdownFilterThroughSort.java | 3 +-
.../{logical => }/PushdownFilterThroughWindow.java | 3 +-
.../{logical => }/PushdownJoinOtherCondition.java | 3 +-
.../rules/rewrite/{logical => }/PushdownLimit.java | 3 +-
.../{logical => }/PushdownProjectThroughCTE.java | 3 +-
.../PushdownProjectThroughCTEAnchor.java | 3 +-
.../{logical => }/PushdownProjectThroughLimit.java | 3 +-
.../{logical => }/PushdownTopNThroughWindow.java | 3 +-
.../rules/rewrite/{logical => }/ReorderJoin.java | 3 +-
.../rewrite/{logical => }/ScalarApplyToJoin.java | 3 +-
.../rewrite/{logical => }/SemiJoinCommute.java | 3 +-
.../rewrite/{logical => }/SimplifyAggGroupBy.java | 3 +-
.../rules/rewrite/{logical => }/SplitLimit.java | 3 +-
.../{logical => }/TransposeSemiJoinAgg.java | 3 +-
.../{logical => }/TransposeSemiJoinAggProject.java | 3 +-
.../TransposeSemiJoinLogicalJoin.java | 5 +-
.../TransposeSemiJoinLogicalJoinProject.java | 3 +-
.../UnCorrelatedApplyAggregateFilter.java | 3 +-
.../{logical => }/UnCorrelatedApplyFilter.java | 3 +-
.../UnCorrelatedApplyProjectFilter.java | 3 +-
.../{jobs => rules/rewrite}/batch/ApplyToJoin.java | 9 +-
.../{ => batch}/BatchRewriteRuleFactory.java | 2 +-
.../batch/CorrelateApplyToUnCorrelateApply.java | 13 +-
.../batch/EliminateUselessPlanUnderApply.java | 7 +-
.../logical/AbstractPushDownProjectRule.java | 52 -----
.../mv/AbstractSelectMaterializedIndexRule.java | 2 +-
.../mv/SelectMaterializedIndexWithAggregate.java | 2 +-
.../SelectMaterializedIndexWithoutAggregate.java | 2 +-
.../trees/plans/logical/LogicalOlapScan.java | 2 +-
.../rules/analysis/AnalyzeWhereSubqueryTest.java | 18 +-
.../analysis/CheckExpressionLegalityTest.java | 2 +-
.../nereids/rules/analysis/RegisterCTETest.java | 8 +-
.../join/InnerJoinLAsscomProjectTest.java | 2 +-
.../join/OuterJoinLAsscomProjectTest.java | 2 +-
.../AggScalarSubQueryToWindowFunctionTest.java | 2 +-
.../{logical => }/AggregateStrategiesTest.java | 2 +-
.../CheckAndStandardizeWindowFunctionTest.java | 2 +-
.../rewrite/{logical => }/ColumnPruningTest.java | 2 +-
.../EliminateDedupJoinConditionTest.java | 2 +-
.../rewrite/{logical => }/EliminateFilterTest.java | 2 +-
.../EliminateGroupByConstantTest.java | 2 +-
.../rewrite/{logical => }/EliminateLimitTest.java | 2 +-
.../{logical => }/EliminateOuterJoinTest.java | 2 +-
.../EliminateUnnecessaryProjectTest.java | 2 +-
.../ExtractAndNormalizeWindowExpressionTest.java | 2 +-
.../ExtractFilterFromCrossJoinTest.java | 2 +-
...ctSingleTableExpressionFromDisjunctionTest.java | 2 +-
.../FindHashConditionForJoinTest.java | 2 +-
.../rewrite/{logical => }/InferAggNotNullTest.java | 2 +-
.../{logical => }/InferFilterNotNullTest.java | 2 +-
.../{logical => }/InferJoinNotNullTest.java | 2 +-
.../rewrite/{logical => }/InferPredicatesTest.java | 2 +-
.../rewrite/{logical => }/MergeFiltersTest.java | 2 +-
.../rewrite/{logical => }/MergeLimitsTest.java | 2 +-
.../rewrite/{logical => }/MergeProjectsTest.java | 2 +-
.../{logical => }/NormalizeAggregateTest.java | 2 +-
.../PhysicalStorageLayerAggregateTest.java | 2 +-
.../{logical => }/PruneOlapScanPartitionTest.java | 2 +-
.../{logical => }/PruneOlapScanTabletTest.java | 2 +-
.../{logical => }/PushFilterInsideJoinTest.java | 2 +-
.../PushdownAliasThroughJoinTest.java | 2 +-
.../PushdownExpressionsInHashConditionTest.java | 2 +-
.../PushdownFilterThroughAggregationTest.java | 2 +-
.../PushdownFilterThroughJoinTest.java | 2 +-
.../PushdownFilterThroughSortTest.java | 2 +-
.../PushdownFilterThroughWindowTest.java | 2 +-
.../PushdownJoinOtherConditionTest.java | 2 +-
.../rewrite/{logical => }/PushdownLimitTest.java | 2 +-
.../PushdownProjectThroughLimitTest.java | 2 +-
.../rewrite/{logical => }/ReorderJoinTest.java | 2 +-
.../{logical => }/SimplifyAggGroupByTest.java | 2 +-
.../rewrite/{logical => }/SplitLimitTest.java | 2 +-
.../TransposeSemiJoinAggProjectTest.java | 2 +-
.../{logical => }/TransposeSemiJoinAggTest.java | 2 +-
.../TransposeSemiJoinLogicalJoinProjectTest.java | 2 +-
.../TransposeSemiJoinLogicalJoinTest.java | 2 +-
.../mv/BaseMaterializedIndexSelectTest.java | 2 +-
.../rules/{ => rewrite}/mv/SelectMvIndexTest.java | 2 +-
.../{ => rewrite}/mv/SelectRollupIndexTest.java | 4 +-
.../org/apache/doris/nereids/sqltest/JoinTest.java | 4 +-
.../doris/nereids/sqltest/MultiJoinTest.java | 2 +-
.../doris/nereids/trees/expressions/ViewTest.java | 2 +-
.../org/apache/doris/nereids/util/PlanChecker.java | 8 +-
183 files changed, 643 insertions(+), 887 deletions(-)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer => }/CTEContext.java (76%)
delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/PlanSource.java
delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/CascadesOptimizer.java
delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/CheckLegalityBeforeTypeCoercion.java
rename fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/{batch/BatchRewriteJob.java => executor/AbstractBatchJobExecutor.java} (70%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/NereidsAnalyzer.java => jobs/executor/Analyzer.java} (92%)
create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/executor/Optimizer.java
rename fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/{batch/NereidsRewriter.java => executor/Rewriter.java} (57%)
create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/rewrite/CostBasedRewriteJob.java
rename fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/{ => rewrite}/RewriteJob.java (90%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/{ => rewrite}/TopicRewriteJob.java (85%)
delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/ProxyRule.java
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{jobs/batch => rules/expression}/CheckLegalityAfterRewrite.java (86%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/AdjustNullable.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/AggScalarSubQueryToWindowFunction.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/BuildAggForUnion.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/BuildCTEAnchorAndCTEProducer.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/CTEProducerRewrite.java (93%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/CheckAndStandardizeWindowFunctionAndFrame.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/CheckDataTypes.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ColumnPruning.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ConvertInnerOrCrossJoin.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/CountDistinctRewrite.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateAggregate.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateDedupJoinCondition.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateFilter.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateGroupByConstant.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateLimit.java (91%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateLimitUnderApply.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateNotNull.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateNullAwareLeftAntiJoin.java (93%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateOrderByConstant.java (93%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateOuterJoin.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateSortUnderApply.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateUnnecessaryProject.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EnsureProjectOnTopJoin.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExistsApplyToJoin.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractAndNormalizeWindowExpression.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractFilterFromCrossJoin.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractSingleTableExpressionFromDisjunction.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/FindHashConditionForJoin.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/HideOneRowRelationUnderUnion.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InApplyToJoin.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferAggNotNull.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferFilterNotNull.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferJoinNotNull.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferPredicates.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InlineCTE.java (90%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeFilters.java (93%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeGenerates.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeLimits.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeProjects.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeSetOperations.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MultiJoin.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/NormalizeAggregate.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/NormalizeSort.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/NormalizeToSlot.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PredicatePropagation.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PruneFileScanPartition.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PruneOlapScanPartition.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PruneOlapScanTablet.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PullUpCorrelatedFilterUnderApplyAggregateProject.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PullUpPredicates.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PullUpProjectUnderApply.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushFilterInsideJoin.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownAliasIntoUnionAll.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownAliasThroughJoin.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownExpressionsInHashCondition.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughAggregation.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughCTE.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughCTEAnchor.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughJoin.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughProject.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughRepeat.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughSetOperation.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughSort.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughWindow.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownJoinOtherCondition.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownLimit.java (98%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownProjectThroughCTE.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownProjectThroughCTEAnchor.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownProjectThroughLimit.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownTopNThroughWindow.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ReorderJoin.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ScalarApplyToJoin.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/SemiJoinCommute.java (92%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/SimplifyAggGroupBy.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/SplitLimit.java (93%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinAgg.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinAggProject.java (94%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinLogicalJoin.java (95%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinLogicalJoinProject.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/UnCorrelatedApplyAggregateFilter.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/UnCorrelatedApplyFilter.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{logical => }/UnCorrelatedApplyProjectFilter.java (97%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{jobs => rules/rewrite}/batch/ApplyToJoin.java (80%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/{ => batch}/BatchRewriteRuleFactory.java (96%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{jobs => rules/rewrite}/batch/CorrelateApplyToUnCorrelateApply.java (76%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/{jobs => rules/rewrite}/batch/EliminateUselessPlanUnderApply.java (84%)
delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/AbstractPushDownProjectRule.java
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/AbstractSelectMaterializedIndexRule.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/SelectMaterializedIndexWithAggregate.java (99%)
rename fe/fe-core/src/main/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/SelectMaterializedIndexWithoutAggregate.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/AggScalarSubQueryToWindowFunctionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/AggregateStrategiesTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/CheckAndStandardizeWindowFunctionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ColumnPruningTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateDedupJoinConditionTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateFilterTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateGroupByConstantTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateLimitTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateOuterJoinTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/EliminateUnnecessaryProjectTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractAndNormalizeWindowExpressionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractFilterFromCrossJoinTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ExtractSingleTableExpressionFromDisjunctionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/FindHashConditionForJoinTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferAggNotNullTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferFilterNotNullTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferJoinNotNullTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/InferPredicatesTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeFiltersTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeLimitsTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/MergeProjectsTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/NormalizeAggregateTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PhysicalStorageLayerAggregateTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PruneOlapScanPartitionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PruneOlapScanTabletTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushFilterInsideJoinTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownAliasThroughJoinTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownExpressionsInHashConditionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughAggregationTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughJoinTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughSortTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownFilterThroughWindowTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownJoinOtherConditionTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownLimitTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/PushdownProjectThroughLimitTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/ReorderJoinTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/SimplifyAggGroupByTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/SplitLimitTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinAggProjectTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinAggTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinLogicalJoinProjectTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/{logical => }/TransposeSemiJoinLogicalJoinTest.java (98%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/BaseMaterializedIndexSelectTest.java (97%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/SelectMvIndexTest.java (99%)
rename fe/fe-core/src/test/java/org/apache/doris/nereids/rules/{ => rewrite}/mv/SelectRollupIndexTest.java (99%)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org