This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new e2a97611911 [opt](Nereids) forbid distribute under project and filter
(#39812)
e2a97611911 is described below
commit e2a976119110d0192a4829fc95b07f0845b8e9ff
Author: morrySnow <[email protected]>
AuthorDate: Fri Aug 23 14:27:16 2024 +0800
[opt](Nereids) forbid distribute under project and filter (#39812)
---
.../properties/ChildrenPropertiesRegulator.java | 6 +++++
.../data/nereids_hint_tpcds_p0/shape/query47.out | 4 ++--
.../data/nereids_hint_tpcds_p0/shape/query57.out | 4 ++--
.../data/nereids_hint_tpcds_p0/shape/query89.out | 4 ++--
.../shape/query47.out | 4 ++--
.../shape/query57.out | 4 ++--
.../shape/query89.out | 4 ++--
.../noStatsRfPrune/query47.out | 4 ++--
.../noStatsRfPrune/query57.out | 4 ++--
.../noStatsRfPrune/query89.out | 4 ++--
.../noStatsRfPrune/query93.out | 27 +++++++++++-----------
.../no_stats_shape/query47.out | 4 ++--
.../no_stats_shape/query57.out | 4 ++--
.../no_stats_shape/query89.out | 4 ++--
.../no_stats_shape/query93.out | 27 +++++++++++-----------
.../rf_prune/query47.out | 4 ++--
.../rf_prune/query57.out | 4 ++--
.../rf_prune/query89.out | 4 ++--
.../nereids_tpcds_shape_sf100_p0/shape/query47.out | 4 ++--
.../nereids_tpcds_shape_sf100_p0/shape/query57.out | 4 ++--
.../nereids_tpcds_shape_sf100_p0/shape/query89.out | 4 ++--
.../tpcds_sf100/noStatsRfPrune/query47.out | 4 ++--
.../tpcds_sf100/noStatsRfPrune/query57.out | 4 ++--
.../tpcds_sf100/noStatsRfPrune/query89.out | 4 ++--
.../tpcds_sf100/noStatsRfPrune/query93.out | 27 +++++++++++-----------
.../tpcds_sf100/no_stats_shape/query47.out | 4 ++--
.../tpcds_sf100/no_stats_shape/query57.out | 4 ++--
.../tpcds_sf100/no_stats_shape/query89.out | 4 ++--
.../tpcds_sf100/no_stats_shape/query93.out | 27 +++++++++++-----------
.../new_shapes_p0/tpcds_sf100/rf_prune/query47.out | 4 ++--
.../new_shapes_p0/tpcds_sf100/rf_prune/query57.out | 4 ++--
.../new_shapes_p0/tpcds_sf100/rf_prune/query89.out | 4 ++--
.../new_shapes_p0/tpcds_sf100/shape/query47.out | 4 ++--
.../new_shapes_p0/tpcds_sf100/shape/query57.out | 4 ++--
.../new_shapes_p0/tpcds_sf100/shape/query89.out | 4 ++--
.../new_shapes_p0/tpcds_sf1000/shape/query47.out | 4 ++--
.../new_shapes_p0/tpcds_sf1000/shape/query57.out | 4 ++--
.../new_shapes_p0/tpcds_sf1000/shape/query89.out | 4 ++--
38 files changed, 128 insertions(+), 118 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java
index 1ccc3cf40e4..686350ea91d 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java
@@ -201,6 +201,9 @@ public class ChildrenPropertiesRegulator extends
PlanVisitor<Boolean, Void> {
@Override
public Boolean visitPhysicalFilter(PhysicalFilter<? extends Plan> filter,
Void context) {
// do not process must shuffle
+ if (children.get(0).getPlan() instanceof PhysicalDistribute) {
+ return false;
+ }
return true;
}
@@ -464,6 +467,9 @@ public class ChildrenPropertiesRegulator extends
PlanVisitor<Boolean, Void> {
@Override
public Boolean visitPhysicalProject(PhysicalProject<? extends Plan>
project, Void context) {
// do not process must shuffle
+ if (children.get(0).getPlan() instanceof PhysicalDistribute) {
+ return false;
+ }
return true;
}
diff --git a/regression-test/data/nereids_hint_tpcds_p0/shape/query47.out
b/regression-test/data/nereids_hint_tpcds_p0/shape/query47.out
index 7b1c028228c..1b0e2008159 100644
--- a/regression-test/data/nereids_hint_tpcds_p0/shape/query47.out
+++ b/regression-test/data/nereids_hint_tpcds_p0/shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/nereids_hint_tpcds_p0/shape/query57.out
b/regression-test/data/nereids_hint_tpcds_p0/shape/query57.out
index f2c894e8194..a9ecbe3ebe3 100644
--- a/regression-test/data/nereids_hint_tpcds_p0/shape/query57.out
+++ b/regression-test/data/nereids_hint_tpcds_p0/shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/nereids_hint_tpcds_p0/shape/query89.out
b/regression-test/data/nereids_hint_tpcds_p0/shape/query89.out
index 91bbf073829..b6df862c67c 100644
--- a/regression-test/data/nereids_hint_tpcds_p0/shape/query89.out
+++ b/regression-test/data/nereids_hint_tpcds_p0/shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query47.out
b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query47.out
index a9cef4ad142..a7bc45eeacd 100644
--- a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query47.out
+++ b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query57.out
b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query57.out
index e1e1d7e0ec4..5c47b7ae249 100644
--- a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query57.out
+++ b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query89.out
b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query89.out
index 072af8a4aee..64708542abb 100644
--- a/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query89.out
+++ b/regression-test/data/nereids_tpcds_shape_sf1000_p0/shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query47.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query47.out
index af0ae34c5d5..c807b2d355e 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query47.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query57.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query57.out
index d6142f4fe14..0de9d7afec0 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query57.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query89.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query89.out
index 2976b10eda1..e1c1fd9222d 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query89.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query93.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query93.out
index d0977a71afd..77175ca96ff 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query93.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/noStatsRfPrune/query93.out
@@ -4,17 +4,18 @@ PhysicalResultSink
--PhysicalTopN[MERGE_SORT]
----PhysicalDistribute[DistributionSpecGather]
------PhysicalTopN[LOCAL_SORT]
---------hashAgg[LOCAL]
-----------PhysicalProject
-------------PhysicalDistribute[DistributionSpecHash]
---------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
-----------------PhysicalProject
-------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_returns] apply RFs: RF2
-----------------PhysicalProject
-------------------filter((reason.r_reason_desc = 'duplicate purchase'))
---------------------PhysicalOlapScan[reason]
+--------hashAgg[GLOBAL]
+----------PhysicalDistribute[DistributionSpecHash]
+------------hashAgg[LOCAL]
+--------------PhysicalProject
+----------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
+------------------PhysicalProject
+--------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_returns] apply RFs: RF2
+------------------PhysicalProject
+--------------------filter((reason.r_reason_desc = 'duplicate purchase'))
+----------------------PhysicalOlapScan[reason]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query47.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query47.out
index fe54c0ad6fa..659f33cec98 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query47.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query57.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query57.out
index a2ef9fadc40..17896b5f964 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query57.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query89.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query89.out
index cc5f3e08aa0..35a90cb9429 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query89.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query93.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query93.out
index d0977a71afd..77175ca96ff 100644
---
a/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query93.out
+++
b/regression-test/data/nereids_tpcds_shape_sf100_p0/no_stats_shape/query93.out
@@ -4,17 +4,18 @@ PhysicalResultSink
--PhysicalTopN[MERGE_SORT]
----PhysicalDistribute[DistributionSpecGather]
------PhysicalTopN[LOCAL_SORT]
---------hashAgg[LOCAL]
-----------PhysicalProject
-------------PhysicalDistribute[DistributionSpecHash]
---------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
-----------------PhysicalProject
-------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_returns] apply RFs: RF2
-----------------PhysicalProject
-------------------filter((reason.r_reason_desc = 'duplicate purchase'))
---------------------PhysicalOlapScan[reason]
+--------hashAgg[GLOBAL]
+----------PhysicalDistribute[DistributionSpecHash]
+------------hashAgg[LOCAL]
+--------------PhysicalProject
+----------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
+------------------PhysicalProject
+--------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_returns] apply RFs: RF2
+------------------PhysicalProject
+--------------------filter((reason.r_reason_desc = 'duplicate purchase'))
+----------------------PhysicalOlapScan[reason]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query47.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query47.out
index 72b0f73c435..e9c29da52d6 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query47.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query57.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query57.out
index 62ad9f39728..ae1d9e8b5af 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query57.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query89.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query89.out
index 2976b10eda1..e1c1fd9222d 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query89.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/rf_prune/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query47.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query47.out
index 70d9beb3705..bba74448d30 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query47.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query57.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query57.out
index 3884d995fd1..06e9f277d5a 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query57.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query89.out
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query89.out
index cc5f3e08aa0..35a90cb9429 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query89.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query47.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query47.out
index af0ae34c5d5..c807b2d355e 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query47.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query57.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query57.out
index d6142f4fe14..0de9d7afec0 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query57.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query89.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query89.out
index 2976b10eda1..e1c1fd9222d 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query89.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query93.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query93.out
index d0977a71afd..77175ca96ff 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query93.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/noStatsRfPrune/query93.out
@@ -4,17 +4,18 @@ PhysicalResultSink
--PhysicalTopN[MERGE_SORT]
----PhysicalDistribute[DistributionSpecGather]
------PhysicalTopN[LOCAL_SORT]
---------hashAgg[LOCAL]
-----------PhysicalProject
-------------PhysicalDistribute[DistributionSpecHash]
---------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
-----------------PhysicalProject
-------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_returns] apply RFs: RF2
-----------------PhysicalProject
-------------------filter((reason.r_reason_desc = 'duplicate purchase'))
---------------------PhysicalOlapScan[reason]
+--------hashAgg[GLOBAL]
+----------PhysicalDistribute[DistributionSpecHash]
+------------hashAgg[LOCAL]
+--------------PhysicalProject
+----------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
+------------------PhysicalProject
+--------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_returns] apply RFs: RF2
+------------------PhysicalProject
+--------------------filter((reason.r_reason_desc = 'duplicate purchase'))
+----------------------PhysicalOlapScan[reason]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query47.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query47.out
index fe54c0ad6fa..659f33cec98 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query47.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query57.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query57.out
index a2ef9fadc40..17896b5f964 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query57.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query89.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query89.out
index cc5f3e08aa0..35a90cb9429 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query89.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query93.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query93.out
index d0977a71afd..77175ca96ff 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query93.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/no_stats_shape/query93.out
@@ -4,17 +4,18 @@ PhysicalResultSink
--PhysicalTopN[MERGE_SORT]
----PhysicalDistribute[DistributionSpecGather]
------PhysicalTopN[LOCAL_SORT]
---------hashAgg[LOCAL]
-----------PhysicalProject
-------------PhysicalDistribute[DistributionSpecHash]
---------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
-----------------PhysicalProject
-------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
---------------------PhysicalProject
-----------------------PhysicalOlapScan[store_returns] apply RFs: RF2
-----------------PhysicalProject
-------------------filter((reason.r_reason_desc = 'duplicate purchase'))
---------------------PhysicalOlapScan[reason]
+--------hashAgg[GLOBAL]
+----------PhysicalDistribute[DistributionSpecHash]
+------------hashAgg[LOCAL]
+--------------PhysicalProject
+----------------hashJoin[INNER_JOIN broadcast]
hashCondition=((store_returns.sr_reason_sk = reason.r_reason_sk))
otherCondition=() build RFs:RF2 r_reason_sk->[sr_reason_sk]
+------------------PhysicalProject
+--------------------hashJoin[INNER_JOIN colocated]
hashCondition=((store_returns.sr_item_sk = store_sales.ss_item_sk) and
(store_returns.sr_ticket_number = store_sales.ss_ticket_number))
otherCondition=() build RFs:RF0 sr_item_sk->[ss_item_sk];RF1
sr_ticket_number->[ss_ticket_number]
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_sales] apply RFs: RF0 RF1
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_returns] apply RFs: RF2
+------------------PhysicalProject
+--------------------filter((reason.r_reason_desc = 'duplicate purchase'))
+----------------------PhysicalOlapScan[reason]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query47.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query47.out
index 72b0f73c435..e9c29da52d6 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query47.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query57.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query57.out
index 62ad9f39728..ae1d9e8b5af 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query57.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git
a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query89.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query89.out
index 2976b10eda1..e1c1fd9222d 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query89.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/rf_prune/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query47.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query47.out
index 70d9beb3705..bba74448d30 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query47.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query57.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query57.out
index 3884d995fd1..06e9f277d5a 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query57.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query89.out
b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query89.out
index cc5f3e08aa0..35a90cb9429 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query89.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf100/shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query47.out
b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query47.out
index a9cef4ad142..a7bc45eeacd 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query47.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query47.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query57.out
b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query57.out
index e1e1d7e0ec4..5c47b7ae249 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query57.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query57.out
@@ -7,8 +7,8 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
--------PhysicalQuickSort[LOCAL_SORT]
----------PhysicalWindow
------------PhysicalQuickSort[LOCAL_SORT]
---------------PhysicalProject
-----------------PhysicalDistribute[DistributionSpecHash]
+--------------PhysicalDistribute[DistributionSpecHash]
+----------------PhysicalProject
------------------hashAgg[GLOBAL]
--------------------PhysicalDistribute[DistributionSpecHash]
----------------------hashAgg[LOCAL]
diff --git a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query89.out
b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query89.out
index 072af8a4aee..64708542abb 100644
--- a/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query89.out
+++ b/regression-test/data/new_shapes_p0/tpcds_sf1000/shape/query89.out
@@ -9,8 +9,8 @@ PhysicalResultSink
------------filter((if(( not (avg_monthly_sales = 0.0000)),
(cast(abs((sum_sales - cast(avg_monthly_sales as DECIMALV3(38, 2)))) as
DECIMALV3(38, 10)) / avg_monthly_sales), NULL) > 0.100000))
--------------PhysicalWindow
----------------PhysicalQuickSort[LOCAL_SORT]
-------------------PhysicalProject
---------------------PhysicalDistribute[DistributionSpecHash]
+------------------PhysicalDistribute[DistributionSpecHash]
+--------------------PhysicalProject
----------------------hashAgg[GLOBAL]
------------------------PhysicalDistribute[DistributionSpecHash]
--------------------------hashAgg[LOCAL]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]