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 d28d15ce664 [fix](test) Adjust check_before_quit test (#53278)
add 11c8a3b4093 [enhancement](nereids) add transform rule SaltJoin,
countDistinctSkewRewrite, and window skew rewrite (#49096)
No new revisions were added by this update.
Summary of changes:
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 17 +-
.../doris/nereids/analyzer/UnboundFunction.java | 27 +-
.../apache/doris/nereids/hint/DistributeHint.java | 43 ++-
.../apache/doris/nereids/hint/JoinSkewInfo.java | 71 ++++
.../org/apache/doris/nereids/hint/LeadingHint.java | 77 ++--
.../doris/nereids/jobs/executor/Analyzer.java | 2 +
.../doris/nereids/jobs/executor/Rewriter.java | 4 +-
.../doris/nereids/parser/LogicalPlanBuilder.java | 100 ++++--
.../nereids/properties/DistributionSpecHash.java | 3 +-
.../properties/EnforceMissingPropertiesHelper.java | 4 +-
.../nereids/properties/MustLocalSortOrderSpec.java | 11 +-
.../nereids/properties/RequestPropertyDeriver.java | 26 +-
.../nereids/properties/SelectHintLeading.java | 24 +-
.../org/apache/doris/nereids/rules/RuleType.java | 6 +
.../rules/analysis/AvgDistinctToSumDivCount.java | 3 +-
.../nereids/rules/analysis/BindExpression.java | 6 +-
.../doris/nereids/rules/analysis/BindSkewExpr.java | 68 ++++
.../rules/analysis/EliminateLogicalSelectHint.java | 3 +-
.../nereids/rules/analysis/ExpressionAnalyzer.java | 14 +-
.../rules/implementation/AggregateStrategies.java | 150 ++++++++
.../LogicalWindowToPhysicalWindow.java | 44 ++-
.../rules/rewrite/PushDownAliasThroughJoin.java | 9 +-
.../doris/nereids/rules/rewrite/SaltJoin.java | 394 +++++++++++++++++++++
.../nereids/rules/rewrite/SumLiteralRewrite.java | 2 +-
.../trees/copier/LogicalPlanDeepCopier.java | 8 +-
.../trees/expressions/WindowExpression.java | 69 ++--
.../functions/agg/AggregateFunction.java | 22 +-
.../trees/expressions/functions/agg/Count.java | 21 +-
.../expressions/functions/agg/GroupConcat.java | 15 +-
.../agg/NotNullableAggregateFunction.java | 18 +-
.../functions/agg/NullableAggregateFunction.java | 32 +-
.../trees/expressions/functions/agg/Sum.java | 17 +-
.../trees/expressions/functions/agg/Sum0.java | 19 +-
.../nereids/trees/plans/algebra/Aggregate.java | 34 ++
.../nereids/trees/plans/logical/LogicalJoin.java | 6 +
.../trees/plans/physical/PhysicalWindow.java | 28 +-
.../java/org/apache/doris/qe/SessionVariable.java | 58 +++
.../joinorder/joinhint/DistributeHintTest.java | 3 +-
.../properties/RequestPropertyDeriverTest.java | 8 +-
.../rules/rewrite/AggregateStrategiesTest.java | 91 +++++
.../doris/nereids/rules/rewrite/SaltJoinTest.java | 282 +++++++++++++++
.../data/nereids_p0/hint/fix_leading.out | Bin 3721 -> 3718 bytes
.../data/nereids_p0/hint/multi_leading.out | Bin 9171 -> 9157 bytes
regression-test/data/nereids_p0/hint/test_hint.out | Bin 1937 -> 1934 bytes
.../data/nereids_p0/hint/test_leading.out | Bin 33391 -> 33347 bytes
.../agg_skew_rewrite/agg_skew_rewrite.out | Bin 0 -> 7895 bytes
.../data/nereids_rules_p0/salt_join/salt_join.out | Bin 0 -> 19356 bytes
.../window_skew_rewrite/window_skew_rewrite.out | Bin 0 -> 5263 bytes
.../data/shape_check/tpcds_sf1000/hint/query1.out | Bin 2260 -> 2259 bytes
.../data/shape_check/tpcds_sf1000/hint/query10.out | Bin 3703 -> 3702 bytes
.../data/shape_check/tpcds_sf1000/hint/query11.out | Bin 3568 -> 3567 bytes
.../data/shape_check/tpcds_sf1000/hint/query12.out | Bin 1537 -> 1536 bytes
.../data/shape_check/tpcds_sf1000/hint/query13.out | Bin 3814 -> 3813 bytes
.../data/shape_check/tpcds_sf1000/hint/query15.out | Bin 1777 -> 1776 bytes
.../data/shape_check/tpcds_sf1000/hint/query17.out | Bin 3562 -> 3561 bytes
.../data/shape_check/tpcds_sf1000/hint/query18.out | Bin 3152 -> 3151 bytes
.../data/shape_check/tpcds_sf1000/hint/query19.out | Bin 2519 -> 2518 bytes
.../data/shape_check/tpcds_sf1000/hint/query2.out | Bin 2254 -> 2252 bytes
.../data/shape_check/tpcds_sf1000/hint/query20.out | Bin 1550 -> 1549 bytes
.../data/shape_check/tpcds_sf1000/hint/query21.out | Bin 1874 -> 1873 bytes
.../data/shape_check/tpcds_sf1000/hint/query22.out | Bin 1288 -> 1287 bytes
.../data/shape_check/tpcds_sf1000/hint/query24.out | Bin 3435 -> 3433 bytes
.../data/shape_check/tpcds_sf1000/hint/query25.out | Bin 3495 -> 3494 bytes
.../data/shape_check/tpcds_sf1000/hint/query26.out | Bin 2206 -> 2205 bytes
.../data/shape_check/tpcds_sf1000/hint/query27.out | Bin 2268 -> 2267 bytes
.../data/shape_check/tpcds_sf1000/hint/query29.out | Bin 3553 -> 3552 bytes
.../data/shape_check/tpcds_sf1000/hint/query3.out | Bin 1265 -> 1264 bytes
.../data/shape_check/tpcds_sf1000/hint/query30.out | Bin 3412 -> 3411 bytes
.../data/shape_check/tpcds_sf1000/hint/query31.out | Bin 4711 -> 4710 bytes
.../data/shape_check/tpcds_sf1000/hint/query32.out | Bin 1631 -> 1630 bytes
.../data/shape_check/tpcds_sf1000/hint/query33.out | Bin 6234 -> 6233 bytes
.../data/shape_check/tpcds_sf1000/hint/query34.out | Bin 2488 -> 2487 bytes
.../data/shape_check/tpcds_sf1000/hint/query36.out | Bin 2036 -> 2035 bytes
.../data/shape_check/tpcds_sf1000/hint/query37.out | Bin 1811 -> 1810 bytes
.../data/shape_check/tpcds_sf1000/hint/query39.out | Bin 2094 -> 2093 bytes
.../data/shape_check/tpcds_sf1000/hint/query4.out | Bin 5432 -> 5431 bytes
.../data/shape_check/tpcds_sf1000/hint/query40.out | Bin 2181 -> 2180 bytes
.../data/shape_check/tpcds_sf1000/hint/query43.out | Bin 1222 -> 1221 bytes
.../data/shape_check/tpcds_sf1000/hint/query44.out | Bin 4754 -> 4753 bytes
.../data/shape_check/tpcds_sf1000/hint/query46.out | Bin 2869 -> 2868 bytes
.../data/shape_check/tpcds_sf1000/hint/query47.out | Bin 3733 -> 3732 bytes
.../data/shape_check/tpcds_sf1000/hint/query48.out | Bin 3290 -> 3289 bytes
.../data/shape_check/tpcds_sf1000/hint/query5.out | Bin 5908 -> 5907 bytes
.../data/shape_check/tpcds_sf1000/hint/query50.out | Bin 2115 -> 2113 bytes
.../data/shape_check/tpcds_sf1000/hint/query51.out | Bin 2792 -> 2791 bytes
.../data/shape_check/tpcds_sf1000/hint/query53.out | Bin 3005 -> 3004 bytes
.../data/shape_check/tpcds_sf1000/hint/query54.out | Bin 6464 -> 6463 bytes
.../data/shape_check/tpcds_sf1000/hint/query55.out | Bin 1291 -> 1290 bytes
.../data/shape_check/tpcds_sf1000/hint/query57.out | Bin 3538 -> 3537 bytes
.../data/shape_check/tpcds_sf1000/hint/query58.out | Bin 7214 -> 7213 bytes
.../data/shape_check/tpcds_sf1000/hint/query59.out | Bin 2665 -> 2664 bytes
.../data/shape_check/tpcds_sf1000/hint/query61.out | Bin 5440 -> 5439 bytes
.../data/shape_check/tpcds_sf1000/hint/query62.out | Bin 1939 -> 1938 bytes
.../data/shape_check/tpcds_sf1000/hint/query63.out | Bin 2999 -> 2998 bytes
.../data/shape_check/tpcds_sf1000/hint/query64.out | Bin 9562 -> 9560 bytes
.../data/shape_check/tpcds_sf1000/hint/query65.out | Bin 3237 -> 3236 bytes
.../data/shape_check/tpcds_sf1000/hint/query67.out | Bin 2056 -> 2055 bytes
.../data/shape_check/tpcds_sf1000/hint/query68.out | Bin 3356 -> 3355 bytes
.../data/shape_check/tpcds_sf1000/hint/query7.out | Bin 2220 -> 2218 bytes
.../data/shape_check/tpcds_sf1000/hint/query70.out | Bin 3175 -> 3174 bytes
.../data/shape_check/tpcds_sf1000/hint/query71.out | Bin 2318 -> 2317 bytes
.../data/shape_check/tpcds_sf1000/hint/query72.out | Bin 4940 -> 4928 bytes
.../data/shape_check/tpcds_sf1000/hint/query73.out | Bin 2459 -> 2458 bytes
.../data/shape_check/tpcds_sf1000/hint/query78.out | Bin 4223 -> 4220 bytes
.../data/shape_check/tpcds_sf1000/hint/query79.out | Bin 2233 -> 2232 bytes
.../data/shape_check/tpcds_sf1000/hint/query81.out | Bin 3360 -> 3359 bytes
.../data/shape_check/tpcds_sf1000/hint/query82.out | Bin 1805 -> 1804 bytes
.../data/shape_check/tpcds_sf1000/hint/query83.out | Bin 6058 -> 6057 bytes
.../data/shape_check/tpcds_sf1000/hint/query84.out | Bin 2349 -> 2348 bytes
.../data/shape_check/tpcds_sf1000/hint/query85.out | Bin 5145 -> 5143 bytes
.../data/shape_check/tpcds_sf1000/hint/query86.out | Bin 1608 -> 1607 bytes
.../data/shape_check/tpcds_sf1000/hint/query88.out | Bin 15079 -> 15078 bytes
.../data/shape_check/tpcds_sf1000/hint/query89.out | Bin 2559 -> 2558 bytes
.../data/shape_check/tpcds_sf1000/hint/query90.out | Bin 3382 -> 3381 bytes
.../data/shape_check/tpcds_sf1000/hint/query91.out | Bin 3535 -> 3534 bytes
.../data/shape_check/tpcds_sf1000/hint/query92.out | Bin 1554 -> 1553 bytes
.../data/shape_check/tpcds_sf1000/hint/query96.out | Bin 1610 -> 1609 bytes
.../data/shape_check/tpcds_sf1000/hint/query97.out | Bin 2195 -> 2194 bytes
.../data/shape_check/tpcds_sf1000/hint/query98.out | Bin 1552 -> 1551 bytes
.../data/shape_check/tpcds_sf1000/hint/query99.out | Bin 1990 -> 1989 bytes
.../data/shape_check/tpch_sf1000/hint/q10.out | Bin 1478 -> 1476 bytes
.../data/shape_check/tpch_sf1000/hint/q11.out | Bin 2074 -> 2073 bytes
.../data/shape_check/tpch_sf1000/hint/q12.out | Bin 1018 -> 1017 bytes
.../data/shape_check/tpch_sf1000/hint/q13.out | Bin 898 -> 897 bytes
.../data/shape_check/tpch_sf1000/hint/q14.out | Bin 694 -> 693 bytes
.../data/shape_check/tpch_sf1000/hint/q15.out | Bin 1562 -> 1561 bytes
.../data/shape_check/tpch_sf1000/hint/q17.out | Bin 1054 -> 1053 bytes
.../data/shape_check/tpch_sf1000/hint/q19.out | Bin 1770 -> 1769 bytes
.../data/shape_check/tpch_sf1000/hint/q3.out | Bin 1071 -> 1069 bytes
.../data/shape_check/tpch_sf1000/hint/q5.out | Bin 2126 -> 2123 bytes
.../data/shape_check/tpch_sf1000/hint/q7.out | Bin 2217 -> 2214 bytes
.../data/shape_check/tpch_sf1000/hint/q8.out | Bin 2896 -> 2894 bytes
.../data/shape_check/tpch_sf1000/hint/q9.out | Bin 2011 -> 2009 bytes
.../agg_skew_rewrite/agg_skew_rewrite.groovy | 216 +++++++++++
.../nereids_rules_p0/salt_join/salt_join.groovy | 282 +++++++++++++++
.../window_skew_rewrite/window_skew_rewrite.groovy | 274 ++++++++++++++
136 files changed, 2386 insertions(+), 225 deletions(-)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/hint/JoinSkewInfo.java
copy
regression-test/java-udf-src/src/main/java/org/apache/doris/udf/ArrayListTest.java
=>
fe/fe-core/src/main/java/org/apache/doris/nereids/properties/MustLocalSortOrderSpec.java
(79%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindSkewExpr.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/SaltJoin.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/SaltJoinTest.java
create mode 100644
regression-test/data/nereids_rules_p0/agg_skew_rewrite/agg_skew_rewrite.out
create mode 100644
regression-test/data/nereids_rules_p0/salt_join/salt_join.out
create mode 100644
regression-test/data/nereids_rules_p0/window_skew_rewrite/window_skew_rewrite.out
create mode 100644
regression-test/suites/nereids_rules_p0/agg_skew_rewrite/agg_skew_rewrite.groovy
create mode 100644
regression-test/suites/nereids_rules_p0/salt_join/salt_join.groovy
create mode 100644
regression-test/suites/nereids_rules_p0/window_skew_rewrite/window_skew_rewrite.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]