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 861a7c546eb [opt](mtmv) Optimize explain materialized view rewrite
info (#49256)
add 45df4f05ee2 [feat](nereids) Add constant propagation (#49982)
No new revisions were added by this update.
Summary of changes:
.../java/org/apache/doris/mtmv/MTMVPlanUtil.java | 16 +-
.../doris/nereids/jobs/executor/Rewriter.java | 9 +-
.../apache/doris/nereids/properties/DataTrait.java | 8 +
.../org/apache/doris/nereids/rules/RuleSet.java | 9 +-
.../org/apache/doris/nereids/rules/RuleType.java | 1 +
.../ExpressionNormalizationAndOptimization.java | 33 +-
.../rules/SimplifyComparisonPredicate.java | 9 +-
.../nereids/rules/rewrite/ConstantPropagation.java | 673 +++++++++++++++++++++
.../rules/rewrite/InferPredicateByReplace.java | 6 +-
.../rules/rewrite/PushDownJoinOtherCondition.java | 5 +-
.../org/apache/doris/nereids/trees/TreeNode.java | 14 +-
.../doris/nereids/trees/expressions/Alias.java | 4 +
.../nereids/trees/plans/logical/LogicalUnion.java | 51 +-
.../plans/physical/PhysicalHashAggregate.java | 16 +-
.../trees/plans/physical/PhysicalQuickSort.java | 14 +-
.../nereids/trees/plans/physical/PhysicalSink.java | 17 +
.../apache/doris/nereids/util/ExpressionUtils.java | 33 +
.../doris/nereids/util/PredicateInferUtils.java | 4 +
.../nereids/privileges/TestCheckPrivileges.java | 3 +-
.../doris/nereids/properties/DataTraitTest.java | 10 +-
.../apache/doris/nereids/properties/FdTest.java | 5 +-
.../doris/nereids/properties/UniformTest.java | 7 +-
.../doris/nereids/properties/UniqueTest.java | 7 +-
.../exploration/mv/HyperGraphComparatorTest.java | 10 +-
.../exploration/mv/MaterializedViewUtilsTest.java | 8 +-
.../expression/ExpressionRewriteTestHelper.java | 11 +-
.../rules/expression/PredicatesSplitterTest.java | 32 +-
.../rules/rewrite/ConstantPropagationTest.java | 448 ++++++++++++++
.../rules/rewrite/EliminateOrderByKeyTest.java | 2 +-
.../nereids/rules/rewrite/InferPredicatesTest.java | 70 +--
.../apache/doris/nereids/sqltest/SqlTestBase.java | 6 +-
.../apache/doris/utframe/TestWithFeService.java | 9 -
.../constant_propagation/constant_propagation.out | Bin 0 -> 18354 bytes
.../nereids_rules_p0/eager_aggregate/basic.out | Bin 3079 -> 3106 bytes
.../eager_aggregate/basic_one_side.out | Bin 3099 -> 3126 bytes
.../push_down_count_through_join_one_side.out | Bin 34895 -> 34877 bytes
.../push_down_filter_other_condition.out | Bin 7975 -> 7911 bytes
.../filter_push_down/push_filter_through.out | Bin 10001 -> 9968 bytes
.../infer_predicate/pull_up_predicate_literal.out | Bin 102267 -> 72316 bytes
.../infer_predicate/pull_up_predicate_set_op.out | Bin 19719 -> 19686 bytes
.../infer_set_operator_distinct.out | Bin 38975 -> 39049 bytes
.../predicate_infer/infer_predicate.out | Bin 12906 -> 12821 bytes
.../pull_up_join_from_union.out | Bin 5798 -> 5760 bytes
.../window_functions/test_qualify_query.out | Bin 1567 -> 1568 bytes
.../data/shape_check/ssb_sf100/shape/q2.3.out | Bin 1459 -> 1521 bytes
.../tpcds_sf100/noStatsRfPrune/query31.out | Bin 4467 -> 4565 bytes
.../tpcds_sf100/noStatsRfPrune/query42.out | Bin 1143 -> 1197 bytes
.../tpcds_sf100/noStatsRfPrune/query66.out | Bin 4403 -> 4369 bytes
.../tpcds_sf100/no_stats_shape/query31.out | Bin 4564 -> 4662 bytes
.../tpcds_sf100/no_stats_shape/query42.out | Bin 1143 -> 1197 bytes
.../tpcds_sf100/no_stats_shape/query66.out | Bin 4507 -> 4473 bytes
.../shape_check/tpcds_sf100/rf_prune/query31.out | Bin 4408 -> 4506 bytes
.../shape_check/tpcds_sf100/rf_prune/query42.out | Bin 1143 -> 1197 bytes
.../shape_check/tpcds_sf100/rf_prune/query66.out | Bin 4427 -> 4393 bytes
.../data/shape_check/tpcds_sf100/shape/query31.out | Bin 4505 -> 4603 bytes
.../data/shape_check/tpcds_sf100/shape/query42.out | Bin 1143 -> 1197 bytes
.../data/shape_check/tpcds_sf100/shape/query66.out | Bin 4531 -> 4497 bytes
.../data/shape_check/tpcds_sf1000/hint/query31.out | Bin 4710 -> 4808 bytes
.../data/shape_check/tpcds_sf1000/hint/query42.out | Bin 1217 -> 1271 bytes
.../data/shape_check/tpcds_sf1000/hint/query66.out | Bin 4527 -> 4493 bytes
.../shape_check/tpcds_sf1000/shape/query31.out | Bin 4505 -> 4603 bytes
.../shape_check/tpcds_sf1000/shape/query42.out | Bin 1143 -> 1197 bytes
.../shape_check/tpcds_sf1000/shape/query66.out | Bin 4527 -> 4493 bytes
.../shape_check/tpcds_sf10t_orc/shape/query31.out | Bin 4277 -> 4375 bytes
.../shape_check/tpcds_sf10t_orc/shape/query42.out | Bin 1143 -> 1197 bytes
.../shape_check/tpcds_sf10t_orc/shape/query66.out | Bin 4481 -> 4447 bytes
.../shape_check/tpcds_sf10t_orc/shape/query78.out | Bin 3964 -> 3968 bytes
.../testAggQueryOnAggMV1.groovy | 4 +-
.../mv_p0/where/k123_nereids/k123_nereids.groovy | 1 +
.../infer_predicate/infer_predicate.groovy | 17 +-
.../constant_propagation.groovy | 492 +++++++++++++++
.../mv/agg_on_none_agg/agg_on_none_agg.groovy | 1 +
.../agg_optimize_when_uniform.groovy | 2 +-
.../agg_with_roll_up/aggregate_with_roll_up.groovy | 2 +-
.../mv/agg_with_roll_up/any_value_roll_up.groovy | 1 +
.../aggregate_without_roll_up.groovy | 2 +-
.../mv/dimension/dimension_2_4.groovy | 2 +
.../constant_genaration_random_test_10.groovy | 1 +
.../constant_genaration_random_test_11.groovy | 1 +
.../constant_genaration_random_test_12.groovy | 1 +
.../constant_genaration_random_test_6.groovy | 2 +
.../constant_genaration_random_test_7.groovy | 1 +
.../mv/join/dphyp_outer/outer_join_dphyp.groovy | 2 +-
.../mv/join/left_outer/outer_join.groovy | 2 +-
.../mv/nested/nested_materialized_view.groovy | 2 +-
85 files changed, 1919 insertions(+), 167 deletions(-)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/ConstantPropagation.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ConstantPropagationTest.java
create mode 100644
regression-test/data/nereids_rules_p0/constant_propagation/constant_propagation.out
create mode 100644
regression-test/suites/nereids_rules_p0/constant_propagation/constant_propagation.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]