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

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


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new 19168917253 [fix](regression): fix nereids_hint_tpcds_p0 query64 shape 
(#35906)
19168917253 is described below

commit 1916891725396d311939d074d796b10080cf8ce6
Author: 谢健 <[email protected]>
AuthorDate: Sun Jun 9 14:20:34 2024 +0800

    [fix](regression): fix nereids_hint_tpcds_p0 query64 shape (#35906)
    
    only for 2.1
---
 .../data/nereids_hint_tpcds_p0/shape/query64.out   | 175 ++++++---------------
 .../nereids_hint_tpcds_p0/shape/query64.groovy     |   1 +
 2 files changed, 50 insertions(+), 126 deletions(-)

diff --git a/regression-test/data/nereids_hint_tpcds_p0/shape/query64.out 
b/regression-test/data/nereids_hint_tpcds_p0/shape/query64.out
index ceca7b3b1ca..dd9fa9f5449 100644
--- a/regression-test/data/nereids_hint_tpcds_p0/shape/query64.out
+++ b/regression-test/data/nereids_hint_tpcds_p0/shape/query64.out
@@ -2,135 +2,58 @@
 -- !ds_shape_64 --
 PhysicalCteAnchor ( cteId=CTEId#1 )
 --PhysicalCteProducer ( cteId=CTEId#1 )
-----PhysicalProject
-------hashAgg[GLOBAL]
---------PhysicalDistribute[DistributionSpecHash]
-----------hashAgg[LOCAL]
-------------PhysicalProject
---------------hashJoin[INNER_JOIN] hashCondition=((store_sales.ss_item_sk = 
cs_ui.cs_item_sk)) otherCondition=() build RFs:RF19 
cs_item_sk->[i_item_sk,sr_item_sk,ss_item_sk]
-----------------PhysicalDistribute[DistributionSpecHash]
-------------------PhysicalProject
---------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_promo_sk = promotion.p_promo_sk)) 
otherCondition=() build RFs:RF18 p_promo_sk->[ss_promo_sk]
-----------------------PhysicalDistribute[DistributionSpecHash]
-------------------------PhysicalProject
---------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_store_sk = store.s_store_sk)) otherCondition=() 
build RFs:RF17 s_store_sk->[ss_store_sk]
-----------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------PhysicalProject
---------------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_sold_date_sk = d1.d_date_sk)) otherCondition=() 
build RFs:RF16 d_date_sk->[ss_sold_date_sk]
-----------------------------------PhysicalProject
-------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((hd2.hd_income_band_sk = ib2.ib_income_band_sk)) 
otherCondition=() build RFs:RF15 ib_income_band_sk->[hd_income_band_sk]
---------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------PhysicalProject
-------------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_current_addr_sk = ad2.ca_address_sk)) 
otherCondition=() build RFs:RF14 ca_address_sk->[c_current_addr_sk]
---------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------PhysicalProject
-------------------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_current_hdemo_sk = hd2.hd_demo_sk)) 
otherCondition=() build RFs:RF13 hd_demo_sk->[c_current_hdemo_sk]
---------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------PhysicalProject
-------------------------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_addr_sk = ad1.ca_address_sk)) otherCondition=() 
build RFs:RF12 ca_address_sk->[ss_addr_sk]
---------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------PhysicalProject
-------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((store_sales.ss_item_sk = store_returns.sr_item_sk) and 
(store_sales.ss_ticket_number = store_returns.sr_ticket_number)) 
otherCondition=() build RFs:RF10 sr_item_sk->[i_item_sk,ss_item_sk];RF11 
sr_ticket_number->[ss_ticket_number]
---------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------PhysicalProject
-------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((store_sales.ss_hdemo_sk = hd1.hd_demo_sk)) otherCondition=() 
build RFs:RF9 hd_demo_sk->[ss_hdemo_sk]
---------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((store_sales.ss_item_sk = item.i_item_sk)) otherCondition=() 
build RFs:RF8 i_item_sk->[ss_item_sk]
-------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((customer.c_first_shipto_date_sk = d3.d_date_sk)) 
otherCondition=() build RFs:RF7 d_date_sk->[c_first_shipto_date_sk]
-----------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((store_sales.ss_cdemo_sk = cd1.cd_demo_sk)) otherCondition=(( 
not (cd_marital_status = cd_marital_status))) build RFs:RF6 
cd_demo_sk->[ss_cdemo_sk]
-----------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((customer.c_current_cdemo_sk = cd2.cd_demo_sk)) 
otherCondition=() build RFs:RF5 cd_demo_sk->[c_current_cdemo_sk]
-----------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((store_sales.ss_customer_sk = customer.c_customer_sk)) 
otherCondition=() build RFs:RF4 c_customer_sk->[ss_customer_sk]
-----------------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------------PhysicalOlapScan[store_sales]
 apply RFs: RF4 RF6 RF8 RF9 RF10 RF11 RF12 RF16 RF17 RF18 RF19
-----------------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((customer.c_first_sales_date_sk = d2.d_date_sk)) 
otherCondition=() build RFs:RF3 d_date_sk->[c_first_sales_date_sk]
-----------------------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------------------PhysicalOlapScan[customer]
 apply RFs: RF3 RF5 RF7 RF13 RF14
-----------------------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------------------PhysicalOlapScan[date_dim]
-----------------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------------PhysicalOlapScan[customer_demographics]
-----------------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------------PhysicalOlapScan[customer_demographics]
-----------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------------------------------------------------------PhysicalProject
---------------------------------------------------------------------------------PhysicalOlapScan[date_dim]
-------------------------------------------------------------------------PhysicalDistribute[DistributionSpecReplicated]
---------------------------------------------------------------------------PhysicalProject
-----------------------------------------------------------------------------filter((item.i_current_price
 <= 58.00) and (item.i_current_price >= 49.00) and i_color IN ('blush', 'lace', 
'lawn', 'misty', 'orange', 'pink'))
-------------------------------------------------------------------------------PhysicalOlapScan[item]
 apply RFs: RF10 RF19
---------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------------PhysicalProject
-------------------------------------------------------------------------hashJoin[INNER_JOIN]
 hashCondition=((hd1.hd_income_band_sk = ib1.ib_income_band_sk)) 
otherCondition=() build RFs:RF2 ib_income_band_sk->[hd_income_band_sk]
---------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------------------PhysicalProject
-------------------------------------------------------------------------------PhysicalOlapScan[household_demographics]
 apply RFs: RF2
---------------------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------------------PhysicalProject
-------------------------------------------------------------------------------PhysicalOlapScan[income_band]
---------------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------------PhysicalProject
-------------------------------------------------------------------PhysicalOlapScan[store_returns]
 apply RFs: RF19
---------------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------------PhysicalProject
-------------------------------------------------------------PhysicalOlapScan[customer_address]
---------------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------------PhysicalProject
-------------------------------------------------------PhysicalOlapScan[household_demographics]
 apply RFs: RF15
---------------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------------PhysicalProject
-------------------------------------------------PhysicalOlapScan[customer_address]
---------------------------------------PhysicalDistribute[DistributionSpecHash]
-----------------------------------------PhysicalProject
-------------------------------------------PhysicalOlapScan[income_band]
-----------------------------------PhysicalDistribute[DistributionSpecReplicated]
-------------------------------------PhysicalProject
---------------------------------------filter(d_year IN (1999, 2000))
+----hashAgg[GLOBAL]
+------hashAgg[LOCAL]
+--------hashJoin[INNER_JOIN] hashCondition=((store_sales.ss_item_sk = 
cs_ui.cs_item_sk)) otherCondition=() build RFs:RF19 
cs_item_sk->[i_item_sk,sr_item_sk,ss_item_sk]
+----------hashJoin[INNER_JOIN] hashCondition=((store_sales.ss_promo_sk = 
promotion.p_promo_sk)) otherCondition=() build RFs:RF18 
p_promo_sk->[ss_promo_sk]
+------------hashJoin[INNER_JOIN] hashCondition=((store_sales.ss_store_sk = 
store.s_store_sk)) otherCondition=() build RFs:RF17 s_store_sk->[ss_store_sk]
+--------------hashJoin[INNER_JOIN] hashCondition=((store_sales.ss_sold_date_sk 
= d1.d_date_sk)) otherCondition=() build RFs:RF16 d_date_sk->[ss_sold_date_sk]
+----------------hashJoin[INNER_JOIN] hashCondition=((hd2.hd_income_band_sk = 
ib2.ib_income_band_sk)) otherCondition=() build RFs:RF15 
ib_income_band_sk->[hd_income_band_sk]
+------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_current_addr_sk = ad2.ca_address_sk)) 
otherCondition=() build RFs:RF14 ca_address_sk->[c_current_addr_sk]
+--------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_current_hdemo_sk = hd2.hd_demo_sk)) 
otherCondition=() build RFs:RF13 hd_demo_sk->[c_current_hdemo_sk]
+----------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_addr_sk = ad1.ca_address_sk)) otherCondition=() 
build RFs:RF12 ca_address_sk->[ss_addr_sk]
+------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_item_sk = store_returns.sr_item_sk) and 
(store_sales.ss_ticket_number = store_returns.sr_ticket_number)) 
otherCondition=() build RFs:RF10 sr_item_sk->[i_item_sk,ss_item_sk];RF11 
sr_ticket_number->[ss_ticket_number]
+--------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_hdemo_sk = hd1.hd_demo_sk)) otherCondition=() 
build RFs:RF9 hd_demo_sk->[ss_hdemo_sk]
+----------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_item_sk = item.i_item_sk)) otherCondition=() 
build RFs:RF8 i_item_sk->[ss_item_sk]
+------------------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_first_shipto_date_sk = d3.d_date_sk)) 
otherCondition=() build RFs:RF7 d_date_sk->[c_first_shipto_date_sk]
+--------------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_cdemo_sk = cd1.cd_demo_sk)) otherCondition=(( 
not (cd_marital_status = cd_marital_status))) build RFs:RF6 
cd_demo_sk->[ss_cdemo_sk]
+----------------------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_current_cdemo_sk = cd2.cd_demo_sk)) 
otherCondition=() build RFs:RF5 cd_demo_sk->[c_current_cdemo_sk]
+------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((store_sales.ss_customer_sk = customer.c_customer_sk)) 
otherCondition=() build RFs:RF4 c_customer_sk->[ss_customer_sk]
+--------------------------------------PhysicalOlapScan[store_sales] apply RFs: 
RF4 RF6 RF8 RF9 RF10 RF11 RF12 RF16 RF17 RF18 RF19
+--------------------------------------hashJoin[INNER_JOIN] 
hashCondition=((customer.c_first_sales_date_sk = d2.d_date_sk)) 
otherCondition=() build RFs:RF3 d_date_sk->[c_first_sales_date_sk]
+----------------------------------------PhysicalOlapScan[customer] apply RFs: 
RF3 RF5 RF7 RF13 RF14
 ----------------------------------------PhysicalOlapScan[date_dim]
-----------------------------PhysicalDistribute[DistributionSpecHash]
-------------------------------PhysicalProject
---------------------------------PhysicalOlapScan[store]
-----------------------PhysicalDistribute[DistributionSpecHash]
-------------------------PhysicalProject
---------------------------PhysicalOlapScan[promotion]
-----------------PhysicalProject
-------------------filter((sale > (2 * refund)))
---------------------hashAgg[GLOBAL]
-----------------------PhysicalDistribute[DistributionSpecHash]
-------------------------hashAgg[LOCAL]
---------------------------PhysicalProject
-----------------------------hashJoin[INNER_JOIN] 
hashCondition=((catalog_sales.cs_item_sk = catalog_returns.cr_item_sk) and 
(catalog_sales.cs_order_number = catalog_returns.cr_order_number)) 
otherCondition=() build RFs:RF0 cr_item_sk->[cs_item_sk];RF1 
cr_order_number->[cs_order_number]
-------------------------------PhysicalProject
---------------------------------PhysicalOlapScan[catalog_sales] apply RFs: RF0 
RF1
-------------------------------PhysicalProject
---------------------------------PhysicalOlapScan[catalog_returns]
+------------------------------------PhysicalOlapScan[customer_demographics]
+----------------------------------PhysicalOlapScan[customer_demographics]
+--------------------------------PhysicalOlapScan[date_dim]
+------------------------------filter((item.i_current_price <= 58.00) and 
(item.i_current_price >= 49.00) and i_color IN ('blush', 'lace', 'lawn', 
'misty', 'orange', 'pink'))
+--------------------------------PhysicalOlapScan[item] apply RFs: RF10 RF19
+----------------------------hashJoin[INNER_JOIN] 
hashCondition=((hd1.hd_income_band_sk = ib1.ib_income_band_sk)) 
otherCondition=() build RFs:RF2 ib_income_band_sk->[hd_income_band_sk]
+------------------------------PhysicalOlapScan[household_demographics] apply 
RFs: RF2
+------------------------------PhysicalOlapScan[income_band]
+--------------------------PhysicalOlapScan[store_returns] apply RFs: RF19
+------------------------PhysicalOlapScan[customer_address]
+----------------------PhysicalOlapScan[household_demographics] apply RFs: RF15
+--------------------PhysicalOlapScan[customer_address]
+------------------PhysicalOlapScan[income_band]
+----------------filter(d_year IN (1999, 2000))
+------------------PhysicalOlapScan[date_dim]
+--------------PhysicalOlapScan[store]
+------------PhysicalOlapScan[promotion]
+----------filter((sale > (2 * refund)))
+------------hashAgg[GLOBAL]
+--------------hashAgg[LOCAL]
+----------------hashJoin[INNER_JOIN] hashCondition=((catalog_sales.cs_item_sk 
= catalog_returns.cr_item_sk) and (catalog_sales.cs_order_number = 
catalog_returns.cr_order_number)) otherCondition=() build RFs:RF0 
cr_item_sk->[cs_item_sk];RF1 cr_order_number->[cs_order_number]
+------------------PhysicalOlapScan[catalog_sales] apply RFs: RF0 RF1
+------------------PhysicalOlapScan[catalog_returns]
 --PhysicalResultSink
 ----PhysicalQuickSort[MERGE_SORT]
-------PhysicalDistribute[DistributionSpecGather]
---------PhysicalQuickSort[LOCAL_SORT]
-----------PhysicalProject
-------------hashJoin[INNER_JOIN] hashCondition=((cs1.item_sk = cs2.item_sk) 
and (cs1.store_name = cs2.store_name) and (cs1.store_zip = cs2.store_zip)) 
otherCondition=((cs2.cnt <= cs1.cnt))
---------------PhysicalDistribute[DistributionSpecHash]
-----------------PhysicalProject
-------------------filter((cs1.syear = 1999))
---------------------PhysicalCteConsumer ( cteId=CTEId#1 )
---------------PhysicalDistribute[DistributionSpecHash]
-----------------PhysicalProject
-------------------filter((cs2.syear = 2000))
---------------------PhysicalCteConsumer ( cteId=CTEId#1 )
+------PhysicalQuickSort[LOCAL_SORT]
+--------hashJoin[INNER_JOIN] hashCondition=((cs1.item_sk = cs2.item_sk) and 
(cs1.store_name = cs2.store_name) and (cs1.store_zip = cs2.store_zip)) 
otherCondition=((cs2.cnt <= cs1.cnt))
+----------filter((cs1.syear = 1999))
+------------PhysicalCteConsumer ( cteId=CTEId#1 )
+----------filter((cs2.syear = 2000))
+------------PhysicalCteConsumer ( cteId=CTEId#1 )
 
 Hint log:
 Used:  leading(catalog_sales shuffle catalog_returns ) leading({ store_sales { 
{ customer d2 } cd2 } } cd1 d3 item { hd1 ib1 } store_returns ad1 hd2 ad2 ib2 
d1 store promotion cs_ui ) leading(cs1 shuffle cs2 )
diff --git a/regression-test/suites/nereids_hint_tpcds_p0/shape/query64.groovy 
b/regression-test/suites/nereids_hint_tpcds_p0/shape/query64.groovy
index d9bd055dda8..fb9f69812ff 100644
--- a/regression-test/suites/nereids_hint_tpcds_p0/shape/query64.groovy
+++ b/regression-test/suites/nereids_hint_tpcds_p0/shape/query64.groovy
@@ -29,6 +29,7 @@ suite("query64") {
     sql 'set forbid_unknown_col_stats=true'
     sql 'set enable_nereids_timeout = false'
     sql 'set enable_runtime_filter_prune=false'
+    sql "SET ignore_shape_nodes='PhysicalDistribute,PhysicalProject'"
     sql 'set runtime_filter_type=8'
     sql 'set dump_nereids_memo=false'
     sql "set disable_nereids_rules=PRUNE_EMPTY_PARTITION"


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

Reply via email to