This is an automated email from the ASF dual-hosted git repository.

kxiao pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new be34030862a [fix](Nereids) column pruning under union broken 
unexpectedly (#26884) (#26985)
be34030862a is described below

commit be34030862ad7c8de93f29926590c4a0900cb5ee
Author: morrySnow <[email protected]>
AuthorDate: Tue Nov 14 22:46:57 2023 +0800

    [fix](Nereids) column pruning under union broken unexpectedly (#26884) 
(#26985)
---
 .../doris/nereids/rules/rewrite/ColumnPruning.java |   3 -
 .../nereids_tpcds_shape_sf100_p0/shape/query14.out |  48 +++++---
 .../nereids_tpcds_shape_sf100_p0/shape/query23.out |  46 ++++----
 .../nereids_tpcds_shape_sf100_p0/shape/query33.out | 131 ++++++++++++---------
 .../nereids_tpcds_shape_sf100_p0/shape/query5.out  |  75 +++++++-----
 .../nereids_tpcds_shape_sf100_p0/shape/query56.out |  66 +++++++----
 .../nereids_tpcds_shape_sf100_p0/shape/query60.out | 102 +++++++++-------
 .../nereids_tpcds_shape_sf100_p0/shape/query66.out |  68 +++++++----
 .../nereids_tpcds_shape_sf100_p0/shape/query74.out |  27 +++--
 .../nereids_tpcds_shape_sf100_p0/shape/query76.out |  52 ++++----
 .../nereids_tpcds_shape_sf100_p0/shape/query77.out | 106 ++++++++++-------
 .../nereids_tpcds_shape_sf100_p0/shape/query80.out | 113 +++++++++++-------
 .../nereids_tpcds_shape_sf100_p0/rf/ds_rf33.groovy |   2 +-
 .../nereids_tpcds_shape_sf100_p0/rf/ds_rf60.groovy |   2 +-
 .../nereids_tpcds_shape_sf100_p0/rf/ds_rf64.groovy |   2 +-
 .../nereids_tpcds_shape_sf100_p0/rf/ds_rf80.groovy |   2 +-
 .../nereids_tpcds_shape_sf100_p0/rf/ds_rf95.groovy |   2 +-
 17 files changed, 504 insertions(+), 343 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/ColumnPruning.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/ColumnPruning.java
index 375ce34e6a8..ad95f1a552f 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/ColumnPruning.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/ColumnPruning.java
@@ -117,9 +117,6 @@ public class ColumnPruning extends 
DefaultPlanRewriter<PruneContext> implements
         }
 
         LogicalUnion prunedOutputUnion = pruneOutput(union, 
union.getOutputs(), union::pruneOutputs, context);
-        if (prunedOutputUnion == union) {
-            return union;
-        }
 
         // start prune children of union
         List<Slot> originOutput = union.getOutput();
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query14.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query14.out
index 4737157b678..ffd24b8f175 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query14.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query14.out
@@ -62,24 +62,27 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 --------------------PhysicalProject
 ----------------------PhysicalOlapScan[store_sales]
 --------------------PhysicalDistribute
-----------------------filter((date_dim.d_year <= 2002)(date_dim.d_year >= 
2000))
-------------------------PhysicalOlapScan[date_dim]
+----------------------PhysicalProject
+------------------------filter((date_dim.d_year <= 2002)(date_dim.d_year >= 
2000))
+--------------------------PhysicalOlapScan[date_dim]
 --------------PhysicalDistribute
 ----------------PhysicalProject
 ------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk = 
date_dim.d_date_sk)
 --------------------PhysicalProject
 ----------------------PhysicalOlapScan[catalog_sales]
 --------------------PhysicalDistribute
-----------------------filter((date_dim.d_year <= 2002)(date_dim.d_year >= 
2000))
-------------------------PhysicalOlapScan[date_dim]
+----------------------PhysicalProject
+------------------------filter((date_dim.d_year <= 2002)(date_dim.d_year >= 
2000))
+--------------------------PhysicalOlapScan[date_dim]
 --------------PhysicalDistribute
 ----------------PhysicalProject
 ------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
 --------------------PhysicalProject
 ----------------------PhysicalOlapScan[web_sales]
 --------------------PhysicalDistribute
-----------------------filter((date_dim.d_year >= 2000)(date_dim.d_year <= 
2002))
-------------------------PhysicalOlapScan[date_dim]
+----------------------PhysicalProject
+------------------------filter((date_dim.d_year >= 2000)(date_dim.d_year <= 
2002))
+--------------------------PhysicalOlapScan[date_dim]
 ----PhysicalResultSink
 ------PhysicalTopN
 --------PhysicalDistribute
@@ -103,12 +106,15 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 
----------------------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk
 = item.i_item_sk)
 ------------------------------------------PhysicalDistribute
 
--------------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------------------PhysicalOlapScan[store_sales]
+----------------------------------------------PhysicalProject
+------------------------------------------------PhysicalOlapScan[store_sales]
 ----------------------------------------------PhysicalDistribute
-------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
---------------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------------------PhysicalProject
+--------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
+----------------------------------------------------PhysicalOlapScan[date_dim]
 ------------------------------------------PhysicalDistribute
---------------------------------------------PhysicalOlapScan[item]
+--------------------------------------------PhysicalProject
+----------------------------------------------PhysicalOlapScan[item]
 ----------------------------PhysicalDistribute
 ------------------------------PhysicalAssertNumRows
 --------------------------------PhysicalDistribute
@@ -126,12 +132,15 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 
----------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk
 = item.i_item_sk)
 ------------------------------------------PhysicalDistribute
 
--------------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------------------PhysicalProject
+------------------------------------------------PhysicalOlapScan[catalog_sales]
 ----------------------------------------------PhysicalDistribute
-------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
---------------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------------------PhysicalProject
+--------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
+----------------------------------------------------PhysicalOlapScan[date_dim]
 ------------------------------------------PhysicalDistribute
---------------------------------------------PhysicalOlapScan[item]
+--------------------------------------------PhysicalProject
+----------------------------------------------PhysicalOlapScan[item]
 ----------------------------PhysicalDistribute
 ------------------------------PhysicalAssertNumRows
 --------------------------------PhysicalDistribute
@@ -149,12 +158,15 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 
----------------------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk
 = item.i_item_sk)
 ------------------------------------------PhysicalDistribute
 
--------------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------------------PhysicalOlapScan[web_sales]
+----------------------------------------------PhysicalProject
+------------------------------------------------PhysicalOlapScan[web_sales]
 ----------------------------------------------PhysicalDistribute
-------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
---------------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------------------PhysicalProject
+--------------------------------------------------filter((date_dim.d_year = 
2002)(date_dim.d_moy = 11))
+----------------------------------------------------PhysicalOlapScan[date_dim]
 ------------------------------------------PhysicalDistribute
---------------------------------------------PhysicalOlapScan[item]
+--------------------------------------------PhysicalProject
+----------------------------------------------PhysicalOlapScan[item]
 ----------------------------PhysicalDistribute
 ------------------------------PhysicalAssertNumRows
 --------------------------------PhysicalDistribute
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query23.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query23.out
index 5339897e089..f1c2753446c 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query23.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query23.out
@@ -65,30 +65,36 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 ------------------------PhysicalProject
 --------------------------PhysicalCteConsumer ( cteId=CTEId#0 )
 ----------------------PhysicalDistribute
-------------------------hashJoin[LEFT_SEMI_JOIN](catalog_sales.cs_bill_customer_sk
 = best_ss_customer.c_customer_sk)
---------------------------PhysicalDistribute
-----------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk 
= date_dim.d_date_sk)
-------------------------------PhysicalOlapScan[catalog_sales]
-------------------------------PhysicalDistribute
---------------------------------filter((date_dim.d_year = 2000)(date_dim.d_moy 
= 5))
-----------------------------------PhysicalOlapScan[date_dim]
---------------------------PhysicalDistribute
-----------------------------PhysicalProject
-------------------------------PhysicalCteConsumer ( cteId=CTEId#2 )
+------------------------PhysicalProject
+--------------------------hashJoin[LEFT_SEMI_JOIN](catalog_sales.cs_bill_customer_sk
 = best_ss_customer.c_customer_sk)
+----------------------------PhysicalDistribute
+------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------PhysicalProject
+----------------------------------PhysicalOlapScan[catalog_sales]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 5))
+--------------------------------------PhysicalOlapScan[date_dim]
+----------------------------PhysicalDistribute
+------------------------------PhysicalProject
+--------------------------------PhysicalCteConsumer ( cteId=CTEId#2 )
 ------------------PhysicalProject
 --------------------hashJoin[RIGHT_SEMI_JOIN](web_sales.ws_item_sk = 
frequent_ss_items.item_sk)
 ----------------------PhysicalDistribute
 ------------------------PhysicalProject
 --------------------------PhysicalCteConsumer ( cteId=CTEId#0 )
 ----------------------PhysicalDistribute
-------------------------hashJoin[LEFT_SEMI_JOIN](web_sales.ws_bill_customer_sk 
= best_ss_customer.c_customer_sk)
---------------------------PhysicalDistribute
-----------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
-------------------------------PhysicalOlapScan[web_sales]
-------------------------------PhysicalDistribute
---------------------------------filter((date_dim.d_year = 2000)(date_dim.d_moy 
= 5))
-----------------------------------PhysicalOlapScan[date_dim]
---------------------------PhysicalDistribute
-----------------------------PhysicalProject
-------------------------------PhysicalCteConsumer ( cteId=CTEId#2 )
+------------------------PhysicalProject
+--------------------------hashJoin[LEFT_SEMI_JOIN](web_sales.ws_bill_customer_sk
 = best_ss_customer.c_customer_sk)
+----------------------------PhysicalDistribute
+------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
+--------------------------------PhysicalProject
+----------------------------------PhysicalOlapScan[web_sales]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 5))
+--------------------------------------PhysicalOlapScan[date_dim]
+----------------------------PhysicalDistribute
+------------------------------PhysicalProject
+--------------------------------PhysicalCteConsumer ( cteId=CTEId#2 )
 
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query33.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query33.out
index 2b19ac506b7..d479e8c20c6 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query33.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query33.out
@@ -9,74 +9,93 @@ PhysicalResultSink
 ------------hashAgg[LOCAL]
 --------------PhysicalUnion
 ----------------PhysicalProject
-------------------hashJoin[RIGHT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
+------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
-----------------------PhysicalProject
-------------------------filter((item.i_category = 'Home'))
---------------------------PhysicalOlapScan[item]
---------------------hashAgg[GLOBAL]
-----------------------PhysicalDistribute
-------------------------hashAgg[LOCAL]
---------------------------PhysicalProject
-----------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
-------------------------------PhysicalDistribute
+----------------------hashAgg[LOCAL]
+------------------------PhysicalProject
+--------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
+----------------------------PhysicalDistribute
+------------------------------PhysicalProject
 --------------------------------hashJoin[INNER_JOIN](store_sales.ss_addr_sk = 
customer_address.ca_address_sk)
 ----------------------------------PhysicalDistribute
-------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[store_sales]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
-------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
+----------------------------------------------PhysicalOlapScan[date_dim]
 ----------------------------------PhysicalDistribute
-------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
---------------------------------------PhysicalOlapScan[customer_address]
-------------------------------PhysicalDistribute
---------------------------------PhysicalOlapScan[item]
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
+----------------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalDistribute
+------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[item]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((item.i_category = 'Home'))
+--------------------------------------PhysicalOlapScan[item]
 ----------------PhysicalProject
-------------------hashJoin[RIGHT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
+------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
-----------------------PhysicalProject
-------------------------filter((item.i_category = 'Home'))
---------------------------PhysicalOlapScan[item]
---------------------hashAgg[GLOBAL]
-----------------------PhysicalDistribute
-------------------------hashAgg[LOCAL]
---------------------------PhysicalProject
-----------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
-------------------------------PhysicalDistribute
+----------------------hashAgg[LOCAL]
+------------------------PhysicalProject
+--------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
+----------------------------PhysicalDistribute
+------------------------------PhysicalProject
 
--------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_bill_addr_sk
 = customer_address.ca_address_sk)
 ----------------------------------PhysicalDistribute
-------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[catalog_sales]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
-------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
+----------------------------------------------PhysicalOlapScan[date_dim]
 ----------------------------------PhysicalDistribute
-------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
---------------------------------------PhysicalOlapScan[customer_address]
-------------------------------PhysicalDistribute
---------------------------------PhysicalOlapScan[item]
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
+----------------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalDistribute
+------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[item]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((item.i_category = 'Home'))
+--------------------------------------PhysicalOlapScan[item]
 ----------------PhysicalProject
-------------------hashJoin[RIGHT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
---------------------PhysicalDistribute
-----------------------PhysicalProject
-------------------------filter((item.i_category = 'Home'))
---------------------------PhysicalOlapScan[item]
---------------------hashAgg[GLOBAL]
-----------------------PhysicalDistribute
-------------------------hashAgg[LOCAL]
---------------------------PhysicalProject
-----------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk = 
item.i_item_sk)
+------------------hashAgg[LOCAL]
+--------------------PhysicalProject
+----------------------hashJoin[LEFT_SEMI_JOIN](item.i_manufact_id = 
item.i_manufact_id)
+------------------------PhysicalDistribute
+--------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk = 
item.i_item_sk)
+----------------------------PhysicalProject
 ------------------------------PhysicalOlapScan[item]
-------------------------------PhysicalDistribute
+----------------------------PhysicalDistribute
+------------------------------PhysicalProject
 --------------------------------hashJoin[INNER_JOIN](web_sales.ws_bill_addr_sk 
= customer_address.ca_address_sk)
 ----------------------------------PhysicalDistribute
-------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[web_sales]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
-------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_moy = 
1)(date_dim.d_year = 2002))
+----------------------------------------------PhysicalOlapScan[date_dim]
 ----------------------------------PhysicalDistribute
-------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
---------------------------------------PhysicalOlapScan[customer_address]
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-5.00))
+----------------------------------------PhysicalOlapScan[customer_address]
+------------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------filter((item.i_category = 'Home'))
+------------------------------PhysicalOlapScan[item]
 
diff --git a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query5.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query5.out
index 7f7bfc81711..a2e8c26203b 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query5.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query5.out
@@ -16,19 +16,22 @@ PhysicalResultSink
 --------------------------hashAgg[LOCAL]
 ----------------------------PhysicalProject
 ------------------------------hashJoin[INNER_JOIN](salesreturns.store_sk = 
store.s_store_sk)
---------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk = 
date_dim.d_date_sk)
-----------------------------------PhysicalUnion
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalProject
-----------------------------------------PhysicalOlapScan[store_sales]
+--------------------------------PhysicalProject
+----------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk = 
date_dim.d_date_sk)
+------------------------------------PhysicalUnion
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store_sales]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store_returns]
 ------------------------------------PhysicalDistribute
 --------------------------------------PhysicalProject
-----------------------------------------PhysicalOlapScan[store_returns]
-----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_date <= 
'2000-09-02')(date_dim.d_date >= '2000-08-19'))
---------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------------filter((date_dim.d_date <= 
'2000-09-02')(date_dim.d_date >= '2000-08-19'))
+------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[store]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[store]
 --------------------PhysicalProject
 ----------------------hashAgg[GLOBAL]
 ------------------------PhysicalDistribute
@@ -36,38 +39,46 @@ PhysicalResultSink
 ----------------------------PhysicalProject
 ------------------------------hashJoin[INNER_JOIN](salesreturns.page_sk = 
catalog_page.cp_catalog_page_sk)
 --------------------------------PhysicalDistribute
-----------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk = 
date_dim.d_date_sk)
-------------------------------------PhysicalUnion
---------------------------------------PhysicalDistribute
-----------------------------------------PhysicalProject
-------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk 
= date_dim.d_date_sk)
+--------------------------------------PhysicalUnion
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------PhysicalOlapScan[catalog_returns]
 --------------------------------------PhysicalDistribute
 ----------------------------------------PhysicalProject
-------------------------------------------PhysicalOlapScan[catalog_returns]
-------------------------------------PhysicalDistribute
---------------------------------------filter((date_dim.d_date >= 
'2000-08-19')(date_dim.d_date <= '2000-09-02'))
-----------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------------filter((date_dim.d_date >= 
'2000-08-19')(date_dim.d_date <= '2000-09-02'))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[catalog_page]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[catalog_page]
 --------------------PhysicalProject
 ----------------------hashAgg[GLOBAL]
 ------------------------PhysicalDistribute
 --------------------------hashAgg[LOCAL]
 ----------------------------PhysicalProject
 
------------------------------hashJoin[INNER_JOIN](salesreturns.wsr_web_site_sk 
= web_site.web_site_sk)
---------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk = 
date_dim.d_date_sk)
-----------------------------------PhysicalUnion
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalProject
-----------------------------------------PhysicalOlapScan[web_sales]
+--------------------------------PhysicalProject
+----------------------------------hashJoin[INNER_JOIN](salesreturns.date_sk = 
date_dim.d_date_sk)
+------------------------------------PhysicalUnion
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_sales]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------hashJoin[INNER_JOIN](web_returns.wr_item_sk
 = web_sales.ws_item_sk)(web_returns.wr_order_number = 
web_sales.ws_order_number)
+--------------------------------------------PhysicalProject
+----------------------------------------------PhysicalOlapScan[web_sales]
+--------------------------------------------PhysicalProject
+----------------------------------------------PhysicalOlapScan[web_returns]
 ------------------------------------PhysicalDistribute
 --------------------------------------PhysicalProject
-----------------------------------------hashJoin[INNER_JOIN](web_returns.wr_item_sk
 = web_sales.ws_item_sk)(web_returns.wr_order_number = 
web_sales.ws_order_number)
-------------------------------------------PhysicalOlapScan[web_sales]
-------------------------------------------PhysicalOlapScan[web_returns]
-----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_date >= 
'2000-08-19')(date_dim.d_date <= '2000-09-02'))
---------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------------filter((date_dim.d_date >= 
'2000-08-19')(date_dim.d_date <= '2000-09-02'))
+------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[web_site]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[web_site]
 
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query56.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query56.out
index c450ca9175c..8903c671616 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query56.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query56.out
@@ -16,41 +16,53 @@ PhysicalResultSink
 --------------------------hashJoin[INNER_JOIN](store_sales.ss_addr_sk = 
customer_address.ca_address_sk)
 ----------------------------PhysicalDistribute
 ------------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
---------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------PhysicalOlapScan[store_sales]
-----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
---------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[store_sales]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
 ----------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 ------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[item]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[item]
 ------------------------------------PhysicalDistribute
 --------------------------------------PhysicalProject
 ----------------------------------------filter(i_color IN ('powder', 'green', 
'cyan'))
 ------------------------------------------PhysicalOlapScan[item]
 ----------------------------PhysicalDistribute
-------------------------------filter((customer_address.ca_gmt_offset = -6.00))
---------------------------------PhysicalOlapScan[customer_address]
+------------------------------PhysicalProject
+--------------------------------filter((customer_address.ca_gmt_offset = 
-6.00))
+----------------------------------PhysicalOlapScan[customer_address]
 ----------------PhysicalProject
 ------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
 --------------------------hashJoin[INNER_JOIN](catalog_sales.cs_bill_addr_sk = 
customer_address.ca_address_sk)
-----------------------------filter((customer_address.ca_gmt_offset = -6.00))
-------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalProject
+------------------------------filter((customer_address.ca_gmt_offset = -6.00))
+--------------------------------PhysicalOlapScan[customer_address]
 ----------------------------PhysicalDistribute
 ------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
---------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------PhysicalOlapScan[catalog_sales]
-----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
---------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[catalog_sales]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
 ----------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 ------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[item]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[item]
 ------------------------------------PhysicalDistribute
 --------------------------------------PhysicalProject
 ----------------------------------------filter(i_color IN ('powder', 'green', 
'cyan'))
@@ -61,19 +73,25 @@ PhysicalResultSink
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
 --------------------------hashJoin[INNER_JOIN](web_sales.ws_bill_addr_sk = 
customer_address.ca_address_sk)
-----------------------------filter((customer_address.ca_gmt_offset = -6.00))
-------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalProject
+------------------------------filter((customer_address.ca_gmt_offset = -6.00))
+--------------------------------PhysicalOlapScan[customer_address]
 ----------------------------PhysicalDistribute
 ------------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk = 
item.i_item_sk)
---------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk 
= date_dim.d_date_sk)
-----------------------------------PhysicalOlapScan[web_sales]
-----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
---------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[web_sales]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 2))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
 ----------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 ------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[item]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[item]
 ------------------------------------PhysicalDistribute
 --------------------------------------PhysicalProject
 ----------------------------------------filter(i_color IN ('powder', 'green', 
'cyan'))
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query60.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query60.out
index 93c2e90efe4..bd043d536a7 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query60.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query60.out
@@ -13,49 +13,63 @@ PhysicalResultSink
 --------------------PhysicalDistribute
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
---------------------------hashJoin[INNER_JOIN](store_sales.ss_addr_sk = 
customer_address.ca_address_sk)
+--------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
 ----------------------------PhysicalDistribute
-------------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
---------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------PhysicalOlapScan[store_sales]
+------------------------------PhysicalProject
+--------------------------------hashJoin[INNER_JOIN](store_sales.ss_addr_sk = 
customer_address.ca_address_sk)
 ----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 8))
---------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 8))
+----------------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-7.00))
+----------------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalDistribute
+------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 --------------------------------PhysicalDistribute
-----------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
-------------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[item]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((item.i_category = 'Children'))
 --------------------------------------PhysicalOlapScan[item]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalProject
-----------------------------------------filter((item.i_category = 'Children'))
-------------------------------------------PhysicalOlapScan[item]
-----------------------------PhysicalDistribute
-------------------------------filter((customer_address.ca_gmt_offset = -7.00))
---------------------------------PhysicalOlapScan[customer_address]
 ----------------PhysicalProject
 ------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
---------------------------hashJoin[INNER_JOIN](catalog_sales.cs_bill_addr_sk = 
customer_address.ca_address_sk)
+--------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
 ----------------------------PhysicalDistribute
-------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
---------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
-----------------------------------PhysicalOlapScan[catalog_sales]
+------------------------------PhysicalProject
+--------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_bill_addr_sk
 = customer_address.ca_address_sk)
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_moy = 
8)(date_dim.d_year = 2000))
+----------------------------------------------PhysicalOlapScan[date_dim]
 ----------------------------------PhysicalDistribute
-------------------------------------filter((date_dim.d_moy = 
8)(date_dim.d_year = 2000))
---------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-7.00))
+----------------------------------------PhysicalOlapScan[customer_address]
+----------------------------PhysicalDistribute
+------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 --------------------------------PhysicalDistribute
-----------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
-------------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[item]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((item.i_category = 'Children'))
 --------------------------------------PhysicalOlapScan[item]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalProject
-----------------------------------------filter((item.i_category = 'Children'))
-------------------------------------------PhysicalOlapScan[item]
-----------------------------PhysicalDistribute
-------------------------------filter((customer_address.ca_gmt_offset = -7.00))
---------------------------------PhysicalOlapScan[customer_address]
 ----------------PhysicalProject
 ------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
@@ -63,20 +77,26 @@ PhysicalResultSink
 ------------------------PhysicalProject
 --------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk = 
item.i_item_sk)
 ----------------------------PhysicalDistribute
-------------------------------hashJoin[INNER_JOIN](web_sales.ws_bill_addr_sk = 
customer_address.ca_address_sk)
---------------------------------PhysicalDistribute
-----------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
-------------------------------------PhysicalOlapScan[web_sales]
-------------------------------------PhysicalDistribute
---------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 8))
-----------------------------------------PhysicalOlapScan[date_dim]
---------------------------------PhysicalDistribute
-----------------------------------filter((customer_address.ca_gmt_offset = 
-7.00))
-------------------------------------PhysicalOlapScan[customer_address]
+------------------------------PhysicalProject
+--------------------------------hashJoin[INNER_JOIN](web_sales.ws_bill_addr_sk 
= customer_address.ca_address_sk)
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_year = 
2000)(date_dim.d_moy = 8))
+----------------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
+--------------------------------------filter((customer_address.ca_gmt_offset = 
-7.00))
+----------------------------------------PhysicalOlapScan[customer_address]
 ----------------------------PhysicalDistribute
 ------------------------------hashJoin[LEFT_SEMI_JOIN](item.i_item_id = 
item.i_item_id)
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[item]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[item]
 --------------------------------PhysicalDistribute
 ----------------------------------PhysicalProject
 ------------------------------------filter((item.i_category = 'Children'))
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query66.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query66.out
index 2581c9d7670..5d8a503ccae 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query66.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query66.out
@@ -14,40 +14,56 @@ PhysicalResultSink
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
 --------------------------hashJoin[INNER_JOIN](web_sales.ws_warehouse_sk = 
warehouse.w_warehouse_sk)
-----------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_time_sk = 
time_dim.t_time_sk)
-------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
---------------------------------hashJoin[INNER_JOIN](web_sales.ws_ship_mode_sk 
= ship_mode.sm_ship_mode_sk)
-----------------------------------PhysicalOlapScan[web_sales]
-----------------------------------PhysicalDistribute
-------------------------------------filter(sm_carrier IN ('GREAT EASTERN', 
'LATVIAN'))
---------------------------------------PhysicalOlapScan[ship_mode]
+----------------------------PhysicalProject
+------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_time_sk = 
time_dim.t_time_sk)
 --------------------------------PhysicalDistribute
-----------------------------------filter((date_dim.d_year = 1998))
-------------------------------------PhysicalOlapScan[date_dim]
-------------------------------PhysicalDistribute
---------------------------------filter((cast(t_time as BIGINT) <= 
77621)(time_dim.t_time >= 48821))
-----------------------------------PhysicalOlapScan[time_dim]
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------hashJoin[INNER_JOIN](web_sales.ws_ship_mode_sk
 = ship_mode.sm_ship_mode_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter(sm_carrier IN ('GREAT 
EASTERN', 'LATVIAN'))
+----------------------------------------------PhysicalOlapScan[ship_mode]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_year = 1998))
+--------------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------filter((cast(t_time as BIGINT) <= 
77621)(time_dim.t_time >= 48821))
+--------------------------------------PhysicalOlapScan[time_dim]
 ----------------------------PhysicalDistribute
-------------------------------PhysicalOlapScan[warehouse]
+------------------------------PhysicalProject
+--------------------------------PhysicalOlapScan[warehouse]
 ----------------PhysicalProject
 ------------------hashAgg[GLOBAL]
 --------------------PhysicalDistribute
 ----------------------hashAgg[LOCAL]
 ------------------------PhysicalProject
 --------------------------hashJoin[INNER_JOIN](catalog_sales.cs_warehouse_sk = 
warehouse.w_warehouse_sk)
-----------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_time_sk 
= time_dim.t_time_sk)
-------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_ship_mode_sk
 = ship_mode.sm_ship_mode_sk)
-----------------------------------PhysicalOlapScan[catalog_sales]
-----------------------------------PhysicalDistribute
-------------------------------------filter(sm_carrier IN ('GREAT EASTERN', 
'LATVIAN'))
---------------------------------------PhysicalOlapScan[ship_mode]
+----------------------------PhysicalProject
+------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_time_sk
 = time_dim.t_time_sk)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_ship_mode_sk
 = ship_mode.sm_ship_mode_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[catalog_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter(sm_carrier IN ('GREAT 
EASTERN', 'LATVIAN'))
+----------------------------------------------PhysicalOlapScan[ship_mode]
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_year = 1998))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------------------PhysicalDistribute
-----------------------------------filter((date_dim.d_year = 1998))
-------------------------------------PhysicalOlapScan[date_dim]
-------------------------------PhysicalDistribute
---------------------------------filter((time_dim.t_time >= 48821)(cast(t_time 
as BIGINT) <= 77621))
-----------------------------------PhysicalOlapScan[time_dim]
+----------------------------------PhysicalProject
+------------------------------------filter((time_dim.t_time >= 
48821)(cast(t_time as BIGINT) <= 77621))
+--------------------------------------PhysicalOlapScan[time_dim]
 ----------------------------PhysicalDistribute
-------------------------------PhysicalOlapScan[warehouse]
+------------------------------PhysicalProject
+--------------------------------PhysicalOlapScan[warehouse]
 
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query74.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query74.out
index f5b4cac2d4c..d6477a3695c 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query74.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query74.out
@@ -9,13 +9,17 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 ------------hashAgg[LOCAL]
 --------------PhysicalProject
 ----------------hashJoin[INNER_JOIN](customer.c_customer_sk = 
store_sales.ss_customer_sk)
-------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk = 
date_dim.d_date_sk)
---------------------PhysicalOlapScan[store_sales]
---------------------PhysicalDistribute
-----------------------filter(d_year IN (2000, 1999))
-------------------------PhysicalOlapScan[date_dim]
 ------------------PhysicalDistribute
---------------------PhysicalOlapScan[customer]
+--------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk = 
date_dim.d_date_sk)
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[store_sales]
+----------------------PhysicalDistribute
+------------------------PhysicalProject
+--------------------------filter(d_year IN (2000, 1999))
+----------------------------PhysicalOlapScan[date_dim]
+------------------PhysicalDistribute
+--------------------PhysicalProject
+----------------------PhysicalOlapScan[customer]
 ------PhysicalProject
 --------hashAgg[GLOBAL]
 ----------PhysicalDistribute
@@ -24,12 +28,15 @@ PhysicalCteAnchor ( cteId=CTEId#0 )
 ----------------hashJoin[INNER_JOIN](customer.c_customer_sk = 
web_sales.ws_bill_customer_sk)
 ------------------PhysicalDistribute
 --------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
-----------------------PhysicalOlapScan[web_sales]
+----------------------PhysicalProject
+------------------------PhysicalOlapScan[web_sales]
 ----------------------PhysicalDistribute
-------------------------filter(d_year IN (2000, 1999))
---------------------------PhysicalOlapScan[date_dim]
+------------------------PhysicalProject
+--------------------------filter(d_year IN (2000, 1999))
+----------------------------PhysicalOlapScan[date_dim]
 ------------------PhysicalDistribute
---------------------PhysicalOlapScan[customer]
+--------------------PhysicalProject
+----------------------PhysicalOlapScan[customer]
 --PhysicalResultSink
 ----PhysicalTopN
 ------PhysicalDistribute
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query76.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query76.out
index 86ed2d00f7c..ec4edcacc5e 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query76.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query76.out
@@ -11,31 +11,43 @@ PhysicalResultSink
 ----------------PhysicalDistribute
 ------------------PhysicalProject
 --------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk = 
date_dim.d_date_sk)
-----------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
-------------------------filter(ss_hdemo_sk IS NULL)
---------------------------PhysicalOlapScan[store_sales]
-------------------------PhysicalDistribute
---------------------------PhysicalOlapScan[item]
+----------------------PhysicalProject
+------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk = 
item.i_item_sk)
+--------------------------PhysicalProject
+----------------------------filter(ss_hdemo_sk IS NULL)
+------------------------------PhysicalOlapScan[store_sales]
+--------------------------PhysicalDistribute
+----------------------------PhysicalProject
+------------------------------PhysicalOlapScan[item]
 ----------------------PhysicalDistribute
-------------------------PhysicalOlapScan[date_dim]
-----------------PhysicalDistribute
-------------------PhysicalProject
---------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
+------------------------PhysicalProject
+--------------------------PhysicalOlapScan[date_dim]
+----------------PhysicalProject
+------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk = 
date_dim.d_date_sk)
+--------------------PhysicalProject
 ----------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk = 
item.i_item_sk)
-------------------------filter(ws_bill_addr_sk IS NULL)
---------------------------PhysicalOlapScan[web_sales]
 ------------------------PhysicalDistribute
---------------------------PhysicalOlapScan[item]
-----------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------filter(ws_bill_addr_sk IS NULL)
+------------------------------PhysicalOlapScan[web_sales]
+------------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------PhysicalOlapScan[item]
+--------------------PhysicalDistribute
+----------------------PhysicalProject
 ------------------------PhysicalOlapScan[date_dim]
-----------------PhysicalDistribute
-------------------PhysicalProject
---------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk = 
date_dim.d_date_sk)
+----------------PhysicalProject
+------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk = 
date_dim.d_date_sk)
+--------------------PhysicalProject
 ----------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk = 
item.i_item_sk)
-------------------------filter(cs_warehouse_sk IS NULL)
---------------------------PhysicalOlapScan[catalog_sales]
 ------------------------PhysicalDistribute
---------------------------PhysicalOlapScan[item]
-----------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------filter(cs_warehouse_sk IS NULL)
+------------------------------PhysicalOlapScan[catalog_sales]
+------------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------PhysicalOlapScan[item]
+--------------------PhysicalDistribute
+----------------------PhysicalProject
 ------------------------PhysicalOlapScan[date_dim]
 
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query77.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query77.out
index 943cce7bc20..ed706b54e66 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query77.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query77.out
@@ -18,26 +18,33 @@ PhysicalResultSink
 ------------------------------hashAgg[LOCAL]
 --------------------------------PhysicalProject
 ----------------------------------hashJoin[INNER_JOIN](store_sales.ss_store_sk 
= store.s_store_sk)
-------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[store_sales]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_date <= 
'1998-09-04')(date_dim.d_date >= '1998-08-05'))
-------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store_sales]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_date <= 
'1998-09-04')(date_dim.d_date >= '1998-08-05'))
+----------------------------------------------PhysicalOlapScan[date_dim]
 ------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[store]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[store]
 ------------------------PhysicalProject
---------------------------hashAgg[GLOBAL]
-----------------------------PhysicalDistribute
-------------------------------hashAgg[LOCAL]
---------------------------------PhysicalProject
-----------------------------------hashJoin[INNER_JOIN](store_returns.sr_store_sk
 = store.s_store_sk)
+--------------------------hashAgg[LOCAL]
+----------------------------PhysicalProject
+------------------------------hashJoin[INNER_JOIN](store_returns.sr_store_sk = 
store.s_store_sk)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
 
------------------------------------hashJoin[INNER_JOIN](store_returns.sr_returned_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[store_returns]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[store_returns]
 --------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_date <= 
'1998-09-04')(date_dim.d_date >= '1998-08-05'))
-------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[store]
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_date <= 
'1998-09-04')(date_dim.d_date >= '1998-08-05'))
+--------------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[store]
 --------------------PhysicalProject
 ----------------------NestedLoopJoin[CROSS_JOIN]
 ------------------------PhysicalProject
@@ -46,10 +53,12 @@ PhysicalResultSink
 ------------------------------hashAgg[LOCAL]
 --------------------------------PhysicalProject
 
----------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
-------------------------------------PhysicalOlapScan[catalog_sales]
+------------------------------------PhysicalProject
+--------------------------------------PhysicalOlapScan[catalog_sales]
 ------------------------------------PhysicalDistribute
---------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
-----------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------------PhysicalProject
+----------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
+------------------------------------------PhysicalOlapScan[date_dim]
 ------------------------PhysicalDistribute
 --------------------------PhysicalProject
 ----------------------------hashAgg[GLOBAL]
@@ -57,36 +66,45 @@ PhysicalResultSink
 --------------------------------hashAgg[LOCAL]
 ----------------------------------PhysicalProject
 
------------------------------------hashJoin[INNER_JOIN](catalog_returns.cr_returned_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[catalog_returns]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[catalog_returns]
 --------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
-------------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
+--------------------------------------------PhysicalOlapScan[date_dim]
 --------------------PhysicalProject
 ----------------------hashJoin[LEFT_OUTER_JOIN](ws.wp_web_page_sk = 
wr.wp_web_page_sk)
 ------------------------PhysicalProject
---------------------------hashAgg[GLOBAL]
-----------------------------PhysicalDistribute
-------------------------------hashAgg[LOCAL]
---------------------------------PhysicalProject
-----------------------------------hashJoin[INNER_JOIN](web_sales.ws_web_page_sk
 = web_page.wp_web_page_sk)
+--------------------------hashAgg[LOCAL]
+----------------------------PhysicalProject
+------------------------------hashJoin[INNER_JOIN](web_sales.ws_web_page_sk = 
web_page.wp_web_page_sk)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
 
------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[web_sales]
+--------------------------------------PhysicalProject
+----------------------------------------PhysicalOlapScan[web_sales]
 --------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
-------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[web_page]
-------------------------PhysicalProject
---------------------------hashAgg[GLOBAL]
-----------------------------PhysicalDistribute
-------------------------------hashAgg[LOCAL]
---------------------------------PhysicalProject
-----------------------------------hashJoin[INNER_JOIN](web_returns.wr_web_page_sk
 = web_page.wp_web_page_sk)
-------------------------------------hashJoin[INNER_JOIN](web_returns.wr_returned_date_sk
 = date_dim.d_date_sk)
---------------------------------------PhysicalOlapScan[web_returns]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
-------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
+--------------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[web_page]
+------------------------PhysicalDistribute
+--------------------------PhysicalProject
+----------------------------hashAgg[LOCAL]
+------------------------------PhysicalProject
+--------------------------------hashJoin[INNER_JOIN](web_returns.wr_web_page_sk
 = web_page.wp_web_page_sk)
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
+--------------------------------------hashJoin[INNER_JOIN](web_returns.wr_returned_date_sk
 = date_dim.d_date_sk)
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_returns]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
+--------------------------------------------filter((date_dim.d_date >= 
'1998-08-05')(date_dim.d_date <= '1998-09-04'))
+----------------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------PhysicalDistribute
+------------------------------------PhysicalProject
 --------------------------------------PhysicalOlapScan[web_page]
 
diff --git 
a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query80.out 
b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query80.out
index 6855da619e9..a7d48e8011a 100644
--- a/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query80.out
+++ b/regression-test/data/nereids_tpcds_shape_sf100_p0/shape/query80.out
@@ -17,51 +17,68 @@ PhysicalResultSink
 ----------------------------PhysicalProject
 
------------------------------hashJoin[RIGHT_OUTER_JOIN](store_sales.ss_item_sk 
= store_returns.sr_item_sk)(store_sales.ss_ticket_number = 
store_returns.sr_ticket_number)
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[store_returns]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[store_returns]
 --------------------------------PhysicalDistribute
-----------------------------------hashJoin[INNER_JOIN](store_sales.ss_store_sk 
= store.s_store_sk)
-------------------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk
 = item.i_item_sk)
---------------------------------------PhysicalDistribute
-----------------------------------------hashJoin[INNER_JOIN](store_sales.ss_promo_sk
 = promotion.p_promo_sk)
-------------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------------PhysicalOlapScan[store_sales]
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](store_sales.ss_store_sk
 = store.s_store_sk)
+--------------------------------------hashJoin[INNER_JOIN](store_sales.ss_promo_sk
 = promotion.p_promo_sk)
+----------------------------------------PhysicalProject
+------------------------------------------hashJoin[INNER_JOIN](store_sales.ss_item_sk
 = item.i_item_sk)
 --------------------------------------------PhysicalDistribute
-----------------------------------------------filter((date_dim.d_date >= 
'1998-08-28')(date_dim.d_date <= '1998-09-27'))
-------------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------------PhysicalDistribute
+----------------------------------------------hashJoin[INNER_JOIN](store_sales.ss_sold_date_sk
 = date_dim.d_date_sk)
+------------------------------------------------PhysicalProject
+--------------------------------------------------PhysicalOlapScan[store_sales]
+------------------------------------------------PhysicalDistribute
+--------------------------------------------------PhysicalProject
+----------------------------------------------------filter((date_dim.d_date >= 
'1998-08-28')(date_dim.d_date <= '1998-09-27'))
+------------------------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------------------PhysicalDistribute
+----------------------------------------------PhysicalProject
+------------------------------------------------filter((item.i_current_price > 
50.00))
+--------------------------------------------------PhysicalOlapScan[item]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
 --------------------------------------------filter((promotion.p_channel_tv = 
'N'))
 ----------------------------------------------PhysicalOlapScan[promotion]
 --------------------------------------PhysicalDistribute
-----------------------------------------filter((item.i_current_price > 50.00))
-------------------------------------------PhysicalOlapScan[item]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[store]
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[store]
 --------------------PhysicalProject
 ----------------------hashAgg[GLOBAL]
 ------------------------PhysicalDistribute
 --------------------------hashAgg[LOCAL]
 ----------------------------PhysicalProject
 
------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_catalog_page_sk
 = catalog_page.cp_catalog_page_sk)
---------------------------------hashJoin[RIGHT_OUTER_JOIN](catalog_sales.cs_item_sk
 = catalog_returns.cr_item_sk)(catalog_sales.cs_order_number = 
catalog_returns.cr_order_number)
-----------------------------------PhysicalDistribute
-------------------------------------PhysicalOlapScan[catalog_returns]
-----------------------------------PhysicalDistribute
-------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk
 = item.i_item_sk)
+--------------------------------PhysicalDistribute
+----------------------------------PhysicalProject
+------------------------------------hashJoin[RIGHT_OUTER_JOIN](catalog_sales.cs_item_sk
 = catalog_returns.cr_item_sk)(catalog_sales.cs_order_number = 
catalog_returns.cr_order_number)
+--------------------------------------PhysicalDistribute
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[catalog_returns]
 --------------------------------------PhysicalDistribute
 
----------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_promo_sk
 = promotion.p_promo_sk)
-------------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------------PhysicalOlapScan[catalog_sales]
---------------------------------------------PhysicalDistribute
-----------------------------------------------filter((date_dim.d_date >= 
'1998-08-28')(date_dim.d_date <= '1998-09-27'))
-------------------------------------------------PhysicalOlapScan[date_dim]
+------------------------------------------PhysicalProject
+--------------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_item_sk
 = item.i_item_sk)
+----------------------------------------------PhysicalDistribute
+------------------------------------------------hashJoin[INNER_JOIN](catalog_sales.cs_sold_date_sk
 = date_dim.d_date_sk)
+--------------------------------------------------PhysicalProject
+----------------------------------------------------PhysicalOlapScan[catalog_sales]
+--------------------------------------------------PhysicalDistribute
+----------------------------------------------------PhysicalProject
+------------------------------------------------------filter((date_dim.d_date 
>= '1998-08-28')(date_dim.d_date <= '1998-09-27'))
+--------------------------------------------------------PhysicalOlapScan[date_dim]
+----------------------------------------------PhysicalDistribute
+------------------------------------------------PhysicalProject
+--------------------------------------------------filter((item.i_current_price 
> 50.00))
+----------------------------------------------------PhysicalOlapScan[item]
 ------------------------------------------PhysicalDistribute
---------------------------------------------filter((promotion.p_channel_tv = 
'N'))
-----------------------------------------------PhysicalOlapScan[promotion]
---------------------------------------PhysicalDistribute
-----------------------------------------filter((item.i_current_price > 50.00))
-------------------------------------------PhysicalOlapScan[item]
+--------------------------------------------PhysicalProject
+----------------------------------------------filter((promotion.p_channel_tv = 
'N'))
+------------------------------------------------PhysicalOlapScan[promotion]
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[catalog_page]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[catalog_page]
 --------------------PhysicalProject
 ----------------------hashAgg[GLOBAL]
 ------------------------PhysicalDistribute
@@ -69,23 +86,31 @@ PhysicalResultSink
 ----------------------------PhysicalProject
 ------------------------------hashJoin[RIGHT_OUTER_JOIN](web_sales.ws_item_sk 
= web_returns.wr_item_sk)(web_sales.ws_order_number = 
web_returns.wr_order_number)
 --------------------------------PhysicalDistribute
-----------------------------------PhysicalOlapScan[web_returns]
+----------------------------------PhysicalProject
+------------------------------------PhysicalOlapScan[web_returns]
 --------------------------------PhysicalDistribute
-----------------------------------hashJoin[INNER_JOIN](web_sales.ws_web_site_sk
 = web_site.web_site_sk)
-------------------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk 
= item.i_item_sk)
---------------------------------------PhysicalDistribute
-----------------------------------------hashJoin[INNER_JOIN](web_sales.ws_promo_sk
 = promotion.p_promo_sk)
-------------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
---------------------------------------------PhysicalOlapScan[web_sales]
+----------------------------------PhysicalProject
+------------------------------------hashJoin[INNER_JOIN](web_sales.ws_web_site_sk
 = web_site.web_site_sk)
+--------------------------------------hashJoin[INNER_JOIN](web_sales.ws_promo_sk
 = promotion.p_promo_sk)
+----------------------------------------PhysicalProject
+------------------------------------------hashJoin[INNER_JOIN](web_sales.ws_item_sk
 = item.i_item_sk)
 --------------------------------------------PhysicalDistribute
-----------------------------------------------filter((date_dim.d_date >= 
'1998-08-28')(date_dim.d_date <= '1998-09-27'))
-------------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------------PhysicalDistribute
+----------------------------------------------hashJoin[INNER_JOIN](web_sales.ws_sold_date_sk
 = date_dim.d_date_sk)
+------------------------------------------------PhysicalProject
+--------------------------------------------------PhysicalOlapScan[web_sales]
+------------------------------------------------PhysicalDistribute
+--------------------------------------------------PhysicalProject
+----------------------------------------------------filter((date_dim.d_date >= 
'1998-08-28')(date_dim.d_date <= '1998-09-27'))
+------------------------------------------------------PhysicalOlapScan[date_dim]
+--------------------------------------------PhysicalDistribute
+----------------------------------------------PhysicalProject
+------------------------------------------------filter((item.i_current_price > 
50.00))
+--------------------------------------------------PhysicalOlapScan[item]
+----------------------------------------PhysicalDistribute
+------------------------------------------PhysicalProject
 --------------------------------------------filter((promotion.p_channel_tv = 
'N'))
 ----------------------------------------------PhysicalOlapScan[promotion]
 --------------------------------------PhysicalDistribute
-----------------------------------------filter((item.i_current_price > 50.00))
-------------------------------------------PhysicalOlapScan[item]
-------------------------------------PhysicalDistribute
---------------------------------------PhysicalOlapScan[web_site]
+----------------------------------------PhysicalProject
+------------------------------------------PhysicalOlapScan[web_site]
 
diff --git 
a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf33.groovy 
b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf33.groovy
index 942a49f4ad7..d8947c6b9dc 100644
--- a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf33.groovy
+++ b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf33.groovy
@@ -125,5 +125,5 @@ limit 100;
     //File file = new File(outFile)
     //file.write(getRuntimeFilters(plan))
     
-    
assertEquals("RF3[i_manufact_id->[i_manufact_id],RF2[i_item_sk->[ss_item_sk],RF1[ca_address_sk->[ss_addr_sk],RF0[d_date_sk->[ss_sold_date_sk],RF7[i_manufact_id->[i_manufact_id],RF6[i_item_sk->[cs_item_sk],RF5[ca_address_sk->[cs_bill_addr_sk],RF4[d_date_sk->[cs_sold_date_sk],RF11[i_manufact_id->[i_manufact_id],RF10[ws_item_sk->[i_item_sk],RF9[ca_address_sk->[ws_bill_addr_sk],RF8[d_date_sk->[ws_sold_date_sk]",
 getRuntimeFilters(plan))
+    
assertEquals("RF3[i_item_sk->[ss_item_sk],RF2[ca_address_sk->[ss_addr_sk],RF1[d_date_sk->[ss_sold_date_sk],RF0[i_manufact_id->[i_manufact_id],RF7[i_item_sk->[cs_item_sk],RF6[ca_address_sk->[cs_bill_addr_sk],RF5[d_date_sk->[cs_sold_date_sk],RF4[i_manufact_id->[i_manufact_id],RF11[i_manufact_id->[i_manufact_id],RF10[ws_item_sk->[i_item_sk],RF9[ca_address_sk->[ws_bill_addr_sk],RF8[d_date_sk->[ws_sold_date_sk]",
 getRuntimeFilters(plan))
 }
diff --git 
a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf60.groovy 
b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf60.groovy
index 999550b7b31..7771310a8f1 100644
--- a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf60.groovy
+++ b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf60.groovy
@@ -128,5 +128,5 @@ where i_category in ('Children'))
     //File file = new File(outFile)
     //file.write(getRuntimeFilters(plan))
     
-    
assertEquals("RF3[ca_address_sk->[ss_addr_sk],RF2[i_item_sk->[ss_item_sk],RF1[d_date_sk->[ss_sold_date_sk],RF0[i_item_id->[i_item_id],RF7[ca_address_sk->[cs_bill_addr_sk],RF6[i_item_sk->[cs_item_sk],RF5[d_date_sk->[cs_sold_date_sk],RF4[i_item_id->[i_item_id],RF11[i_item_sk->[ws_item_sk],RF10[ca_address_sk->[ws_bill_addr_sk],RF9[d_date_sk->[ws_sold_date_sk],RF8[i_item_id->[i_item_id]",
 getRuntimeFilters(plan))
+    
assertEquals("RF3[i_item_sk->[ss_item_sk],RF2[ca_address_sk->[ss_addr_sk],RF1[d_date_sk->[ss_sold_date_sk],RF0[i_item_id->[i_item_id],RF7[i_item_sk->[cs_item_sk],RF6[ca_address_sk->[cs_bill_addr_sk],RF5[d_date_sk->[cs_sold_date_sk],RF4[i_item_id->[i_item_id],RF11[i_item_sk->[ws_item_sk],RF10[ca_address_sk->[ws_bill_addr_sk],RF9[d_date_sk->[ws_sold_date_sk],RF8[i_item_id->[i_item_id]",
 getRuntimeFilters(plan))
 }
diff --git 
a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf64.groovy 
b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf64.groovy
index 9a92477ee23..89e45cc0310 100644
--- a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf64.groovy
+++ b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf64.groovy
@@ -171,5 +171,5 @@ order by cs1.product_name
     //File file = new File(outFile)
     //file.write(getRuntimeFilters(plan))
     
-    
assertEquals("RF18[ss_item_sk->[sr_item_sk],RF19[ss_ticket_number->[sr_ticket_number],RF17[cs_item_sk->[ss_item_sk],RF16[ss_addr_sk->[ca_address_sk],RF15[ca_address_sk->[c_current_addr_sk],RF14[d_date_sk->[c_first_sales_date_sk],RF13[ss_cdemo_sk->[cd_demo_sk],RF12[c_current_cdemo_sk->[cd_demo_sk],RF11[ib_income_band_sk->[hd_income_band_sk],RF10[d_date_sk->[c_first_shipto_date_sk],RF9[hd_demo_sk->[c_current_hdemo_sk],RF8[ss_customer_sk->[c_customer_sk],RF7[s_store_sk->[ss_store_sk],RF
 [...]
+    
assertEquals("RF18[ss_item_sk->[sr_item_sk],RF19[ss_ticket_number->[sr_ticket_number],RF17[cs_item_sk->[ss_item_sk],RF16[ss_addr_sk->[ca_address_sk],RF15[c_current_addr_sk->[ca_address_sk],RF14[d_date_sk->[c_first_sales_date_sk],RF13[ss_cdemo_sk->[cd_demo_sk],RF12[c_current_cdemo_sk->[cd_demo_sk],RF11[ib_income_band_sk->[hd_income_band_sk],RF10[d_date_sk->[c_first_shipto_date_sk],RF9[hd_demo_sk->[c_current_hdemo_sk],RF8[ss_customer_sk->[c_customer_sk],RF7[s_store_sk->[ss_store_sk],RF
 [...]
 }
diff --git 
a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf80.groovy 
b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf80.groovy
index 5552d42c8f8..9dffad45747 100644
--- a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf80.groovy
+++ b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf80.groovy
@@ -146,5 +146,5 @@ group by web_site_id)
     //File file = new File(outFile)
     //file.write(getRuntimeFilters(plan))
     
-    
assertEquals("RF4[ss_item_sk->[sr_item_sk],RF5[ss_ticket_number->[sr_ticket_number],RF3[s_store_sk->[ss_store_sk],RF2[i_item_sk->[ss_item_sk],RF1[p_promo_sk->[ss_promo_sk],RF0[d_date_sk->[ss_sold_date_sk],RF11[cp_catalog_page_sk->[cs_catalog_page_sk],RF9[cs_item_sk->[cr_item_sk],RF10[cs_order_number->[cr_order_number],RF8[i_item_sk->[cs_item_sk],RF7[p_promo_sk->[cs_promo_sk],RF6[d_date_sk->[cs_sold_date_sk],RF16[ws_item_sk->[wr_item_sk],RF17[ws_order_number->[wr_order_number],RF15[we
 [...]
+    
assertEquals("RF4[ss_item_sk->[sr_item_sk],RF5[ss_ticket_number->[sr_ticket_number],RF3[s_store_sk->[ss_store_sk],RF2[p_promo_sk->[ss_promo_sk],RF1[i_item_sk->[ss_item_sk],RF0[d_date_sk->[ss_sold_date_sk],RF11[cp_catalog_page_sk->[cs_catalog_page_sk],RF9[cs_item_sk->[cr_item_sk],RF10[cs_order_number->[cr_order_number],RF8[p_promo_sk->[cs_promo_sk],RF7[i_item_sk->[cs_item_sk],RF6[d_date_sk->[cs_sold_date_sk],RF16[ws_item_sk->[wr_item_sk],RF17[ws_order_number->[wr_order_number],RF15[we
 [...]
 }
diff --git 
a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf95.groovy 
b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf95.groovy
index d69a6c3eace..490dc720f8c 100644
--- a/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf95.groovy
+++ b/regression-test/suites/nereids_tpcds_shape_sf100_p0/rf/ds_rf95.groovy
@@ -82,5 +82,5 @@ limit 100;
     //File file = new File(outFile)
     //file.write(getRuntimeFilters(plan))
     
-    
assertEquals("RF3[ws_order_number->[ws_order_number],RF4[wr_order_number->[ws_order_number,
 ws_order_number],RF5[ws_order_number->[ws_order_number, 
ws_order_number],RF2[web_site_sk->[ws_web_site_sk],RF1[d_date_sk->[ws_ship_date_sk],RF0[ca_address_sk->[ws_ship_addr_sk]",
 getRuntimeFilters(plan))
+    
assertEquals("RF3[ws_order_number->[ws_order_number],RF5[wr_order_number->[ws_order_number,
 ws_order_number],RF4[ws_order_number->[ws_order_number, 
ws_order_number],RF2[web_site_sk->[ws_web_site_sk],RF1[d_date_sk->[ws_ship_date_sk],RF0[ca_address_sk->[ws_ship_addr_sk]",
 getRuntimeFilters(plan))
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to