== Physical Plan ==
* ColumnarToRow (64)
+- CometTakeOrderedAndProject (63)
   +- CometHashAggregate (62)
      +- CometExchange (61)
         +- CometHashAggregate (60)
            +- CometProject (59)
               +- CometSortMergeJoin (58)
                  :- CometSort (52)
                  :  +- CometExchange (51)
                  :     +- CometProject (50)
                  :        +- CometBroadcastHashJoin (49)
                  :           :- CometProject (45)
                  :           :  +- CometBroadcastHashJoin (44)
                  :           :     :- CometProject (40)
                  :           :     :  +- CometBroadcastHashJoin (39)
                  :           :     :     :- CometProject (35)
                  :           :     :     :  +- CometBroadcastHashJoin (34)
                  :           :     :     :     :- CometProject (29)
                  :           :     :     :     :  +- CometBroadcastHashJoin (28)
                  :           :     :     :     :     :- CometProject (23)
                  :           :     :     :     :     :  +- CometBroadcastHashJoin (22)
                  :           :     :     :     :     :     :- CometProject (17)
                  :           :     :     :     :     :     :  +- CometBroadcastHashJoin (16)
                  :           :     :     :     :     :     :     :- CometProject (12)
                  :           :     :     :     :     :     :     :  +- CometBroadcastHashJoin (11)
                  :           :     :     :     :     :     :     :     :- CometProject (7)
                  :           :     :     :     :     :     :     :     :  +- CometBroadcastHashJoin (6)
                  :           :     :     :     :     :     :     :     :     :- CometFilter (2)
                  :           :     :     :     :     :     :     :     :     :  +- CometScan parquet spark_catalog.default.catalog_sales (1)
                  :           :     :     :     :     :     :     :     :     +- CometBroadcastExchange (5)
                  :           :     :     :     :     :     :     :     :        +- CometFilter (4)
                  :           :     :     :     :     :     :     :     :           +- CometScan parquet spark_catalog.default.inventory (3)
                  :           :     :     :     :     :     :     :     +- CometBroadcastExchange (10)
                  :           :     :     :     :     :     :     :        +- CometFilter (9)
                  :           :     :     :     :     :     :     :           +- CometScan parquet spark_catalog.default.warehouse (8)
                  :           :     :     :     :     :     :     +- CometBroadcastExchange (15)
                  :           :     :     :     :     :     :        +- CometFilter (14)
                  :           :     :     :     :     :     :           +- CometScan parquet spark_catalog.default.item (13)
                  :           :     :     :     :     :     +- CometBroadcastExchange (21)
                  :           :     :     :     :     :        +- CometProject (20)
                  :           :     :     :     :     :           +- CometFilter (19)
                  :           :     :     :     :     :              +- CometScan parquet spark_catalog.default.customer_demographics (18)
                  :           :     :     :     :     +- CometBroadcastExchange (27)
                  :           :     :     :     :        +- CometProject (26)
                  :           :     :     :     :           +- CometFilter (25)
                  :           :     :     :     :              +- CometScan parquet spark_catalog.default.household_demographics (24)
                  :           :     :     :     +- CometBroadcastExchange (33)
                  :           :     :     :        +- CometProject (32)
                  :           :     :     :           +- CometFilter (31)
                  :           :     :     :              +- CometScan parquet spark_catalog.default.date_dim (30)
                  :           :     :     +- CometBroadcastExchange (38)
                  :           :     :        +- CometFilter (37)
                  :           :     :           +- CometScan parquet spark_catalog.default.date_dim (36)
                  :           :     +- CometBroadcastExchange (43)
                  :           :        +- CometFilter (42)
                  :           :           +- CometScan parquet spark_catalog.default.date_dim (41)
                  :           +- CometBroadcastExchange (48)
                  :              +- CometFilter (47)
                  :                 +- CometScan parquet spark_catalog.default.promotion (46)
                  +- CometSort (57)
                     +- CometExchange (56)
                        +- CometProject (55)
                           +- CometFilter (54)
                              +- CometScan parquet spark_catalog.default.catalog_returns (53)


(1) CometScan parquet spark_catalog.default.catalog_sales
Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_sold_date_sk#8]
Batched: true
Location: InMemoryFileIndex []
PartitionFilters: [isnotnull(cs_sold_date_sk#8)]
PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)]
ReadSchema: struct<cs_ship_date_sk:int,cs_bill_cdemo_sk:int,cs_bill_hdemo_sk:int,cs_item_sk:int,cs_promo_sk:int,cs_order_number:int,cs_quantity:int>

(2) CometFilter
Input [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_sold_date_sk#8]
Condition : ((((isnotnull(cs_quantity#7) AND isnotnull(cs_item_sk#4)) AND isnotnull(cs_bill_cdemo_sk#2)) AND isnotnull(cs_bill_hdemo_sk#3)) AND isnotnull(cs_ship_date_sk#1))

(3) CometScan parquet spark_catalog.default.inventory
Output [4]: [inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]
Batched: true
Location: InMemoryFileIndex []
PartitionFilters: [isnotnull(inv_date_sk#12)]
PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)]
ReadSchema: struct<inv_item_sk:int,inv_warehouse_sk:int,inv_quantity_on_hand:int>

(4) CometFilter
Input [4]: [inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]
Condition : ((isnotnull(inv_quantity_on_hand#11) AND isnotnull(inv_item_sk#9)) AND isnotnull(inv_warehouse_sk#10))

(5) CometBroadcastExchange
Input [4]: [inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]
Arguments: [inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]

(6) CometBroadcastHashJoin
Left output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_sold_date_sk#8]
Right output [4]: [inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]
Arguments: [cs_item_sk#4], [inv_item_sk#9], Inner, (inv_quantity_on_hand#11 < cs_quantity#7), BuildRight

(7) CometProject
Input [12]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_sold_date_sk#8, inv_item_sk#9, inv_warehouse_sk#10, inv_quantity_on_hand#11, inv_date_sk#12]
Arguments: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_warehouse_sk#10, inv_date_sk#12], [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_warehouse_sk#10, inv_date_sk#12]

(8) CometScan parquet spark_catalog.default.warehouse
Output [2]: [w_warehouse_sk#13, w_warehouse_name#14]
Batched: true
Location [not included in comparison]/{warehouse_dir}/warehouse]
PushedFilters: [IsNotNull(w_warehouse_sk)]
ReadSchema: struct<w_warehouse_sk:int,w_warehouse_name:string>

(9) CometFilter
Input [2]: [w_warehouse_sk#13, w_warehouse_name#14]
Condition : isnotnull(w_warehouse_sk#13)

(10) CometBroadcastExchange
Input [2]: [w_warehouse_sk#13, w_warehouse_name#14]
Arguments: [w_warehouse_sk#13, w_warehouse_name#14]

(11) CometBroadcastHashJoin
Left output [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_warehouse_sk#10, inv_date_sk#12]
Right output [2]: [w_warehouse_sk#13, w_warehouse_name#14]
Arguments: [inv_warehouse_sk#10], [w_warehouse_sk#13], Inner, BuildRight

(12) CometProject
Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_warehouse_sk#10, inv_date_sk#12, w_warehouse_sk#13, w_warehouse_name#14]
Arguments: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14], [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14]

(13) CometScan parquet spark_catalog.default.item
Output [2]: [i_item_sk#15, i_item_desc#16]
Batched: true
Location [not included in comparison]/{warehouse_dir}/item]
PushedFilters: [IsNotNull(i_item_sk)]
ReadSchema: struct<i_item_sk:int,i_item_desc:string>

(14) CometFilter
Input [2]: [i_item_sk#15, i_item_desc#16]
Condition : isnotnull(i_item_sk#15)

(15) CometBroadcastExchange
Input [2]: [i_item_sk#15, i_item_desc#16]
Arguments: [i_item_sk#15, i_item_desc#16]

(16) CometBroadcastHashJoin
Left output [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14]
Right output [2]: [i_item_sk#15, i_item_desc#16]
Arguments: [cs_item_sk#4], [i_item_sk#15], Inner, BuildRight

(17) CometProject
Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_sk#15, i_item_desc#16]
Arguments: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16], [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]

(18) CometScan parquet spark_catalog.default.customer_demographics
Output [2]: [cd_demo_sk#17, cd_marital_status#18]
Batched: true
Location [not included in comparison]/{warehouse_dir}/customer_demographics]
PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,M), IsNotNull(cd_demo_sk)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(19) CometFilter
Input [2]: [cd_demo_sk#17, cd_marital_status#18]
Condition : ((isnotnull(cd_marital_status#18) AND (cd_marital_status#18 = M)) AND isnotnull(cd_demo_sk#17))

(20) CometProject
Input [2]: [cd_demo_sk#17, cd_marital_status#18]
Arguments: [cd_demo_sk#17], [cd_demo_sk#17]

(21) CometBroadcastExchange
Input [1]: [cd_demo_sk#17]
Arguments: [cd_demo_sk#17]

(22) CometBroadcastHashJoin
Left output [10]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]
Right output [1]: [cd_demo_sk#17]
Arguments: [cs_bill_cdemo_sk#2], [cd_demo_sk#17], Inner, BuildRight

(23) CometProject
Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, cd_demo_sk#17]
Arguments: [cs_ship_date_sk#1, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16], [cs_ship_date_sk#1, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]

(24) CometScan parquet spark_catalog.default.household_demographics
Output [2]: [hd_demo_sk#19, hd_buy_potential#20]
Batched: true
Location [not included in comparison]/{warehouse_dir}/household_demographics]
PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,1001-5000      ), IsNotNull(hd_demo_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_buy_potential:string>

(25) CometFilter
Input [2]: [hd_demo_sk#19, hd_buy_potential#20]
Condition : ((isnotnull(hd_buy_potential#20) AND (hd_buy_potential#20 = 1001-5000      )) AND isnotnull(hd_demo_sk#19))

(26) CometProject
Input [2]: [hd_demo_sk#19, hd_buy_potential#20]
Arguments: [hd_demo_sk#19], [hd_demo_sk#19]

(27) CometBroadcastExchange
Input [1]: [hd_demo_sk#19]
Arguments: [hd_demo_sk#19]

(28) CometBroadcastHashJoin
Left output [9]: [cs_ship_date_sk#1, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]
Right output [1]: [hd_demo_sk#19]
Arguments: [cs_bill_hdemo_sk#3], [hd_demo_sk#19], Inner, BuildRight

(29) CometProject
Input [10]: [cs_ship_date_sk#1, cs_bill_hdemo_sk#3, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, hd_demo_sk#19]
Arguments: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16], [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]

(30) CometScan parquet spark_catalog.default.date_dim
Output [4]: [d_date_sk#21, d_date#22, d_week_seq#23, d_year#24]
Batched: true
Location [not included in comparison]/{warehouse_dir}/date_dim]
PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)]
ReadSchema: struct<d_date_sk:int,d_date:date,d_week_seq:int,d_year:int>

(31) CometFilter
Input [4]: [d_date_sk#21, d_date#22, d_week_seq#23, d_year#24]
Condition : ((((isnotnull(d_year#24) AND (d_year#24 = 2001)) AND isnotnull(d_date_sk#21)) AND isnotnull(d_week_seq#23)) AND isnotnull(d_date#22))

(32) CometProject
Input [4]: [d_date_sk#21, d_date#22, d_week_seq#23, d_year#24]
Arguments: [d_date_sk#21, d_date#22, d_week_seq#23], [d_date_sk#21, d_date#22, d_week_seq#23]

(33) CometBroadcastExchange
Input [3]: [d_date_sk#21, d_date#22, d_week_seq#23]
Arguments: [d_date_sk#21, d_date#22, d_week_seq#23]

(34) CometBroadcastHashJoin
Left output [8]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16]
Right output [3]: [d_date_sk#21, d_date#22, d_week_seq#23]
Arguments: [cs_sold_date_sk#8], [d_date_sk#21], Inner, BuildRight

(35) CometProject
Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_sold_date_sk#8, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, d_date_sk#21, d_date#22, d_week_seq#23]
Arguments: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23], [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23]

(36) CometScan parquet spark_catalog.default.date_dim
Output [2]: [d_date_sk#25, d_week_seq#26]
Batched: true
Location [not included in comparison]/{warehouse_dir}/date_dim]
PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_week_seq:int>

(37) CometFilter
Input [2]: [d_date_sk#25, d_week_seq#26]
Condition : (isnotnull(d_week_seq#26) AND isnotnull(d_date_sk#25))

(38) CometBroadcastExchange
Input [2]: [d_date_sk#25, d_week_seq#26]
Arguments: [d_date_sk#25, d_week_seq#26]

(39) CometBroadcastHashJoin
Left output [9]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23]
Right output [2]: [d_date_sk#25, d_week_seq#26]
Arguments: [d_week_seq#23, inv_date_sk#12], [d_week_seq#26, d_date_sk#25], Inner, BuildRight

(40) CometProject
Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, inv_date_sk#12, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23, d_date_sk#25, d_week_seq#26]
Arguments: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23], [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23]

(41) CometScan parquet spark_catalog.default.date_dim
Output [2]: [d_date_sk#27, d_date#28]
Batched: true
Location [not included in comparison]/{warehouse_dir}/date_dim]
PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_date:date>

(42) CometFilter
Input [2]: [d_date_sk#27, d_date#28]
Condition : (isnotnull(d_date#28) AND isnotnull(d_date_sk#27))

(43) CometBroadcastExchange
Input [2]: [d_date_sk#27, d_date#28]
Arguments: [d_date_sk#27, d_date#28]

(44) CometBroadcastHashJoin
Left output [8]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23]
Right output [2]: [d_date_sk#27, d_date#28]
Arguments: [cs_ship_date_sk#1], [d_date_sk#27], Inner, (d_date#28 > date_add(d_date#22, 5)), BuildRight

(45) CometProject
Input [10]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_date#22, d_week_seq#23, d_date_sk#27, d_date#28]
Arguments: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23], [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]

(46) CometScan parquet spark_catalog.default.promotion
Output [1]: [p_promo_sk#29]
Batched: true
Location [not included in comparison]/{warehouse_dir}/promotion]
PushedFilters: [IsNotNull(p_promo_sk)]
ReadSchema: struct<p_promo_sk:int>

(47) CometFilter
Input [1]: [p_promo_sk#29]
Condition : isnotnull(p_promo_sk#29)

(48) CometBroadcastExchange
Input [1]: [p_promo_sk#29]
Arguments: [p_promo_sk#29]

(49) CometBroadcastHashJoin
Left output [6]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Right output [1]: [p_promo_sk#29]
Arguments: [cs_promo_sk#5], [p_promo_sk#29], LeftOuter, BuildRight

(50) CometProject
Input [7]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23, p_promo_sk#29]
Arguments: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23], [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]

(51) CometExchange
Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Arguments: hashpartitioning(cs_item_sk#4, cs_order_number#6, 5), ENSURE_REQUIREMENTS, CometNativeShuffle, [plan_id=1]

(52) CometSort
Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Arguments: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23], [cs_item_sk#4 ASC NULLS FIRST, cs_order_number#6 ASC NULLS FIRST]

(53) CometScan parquet spark_catalog.default.catalog_returns
Output [3]: [cr_item_sk#30, cr_order_number#31, cr_returned_date_sk#32]
Batched: true
Location [not included in comparison]/{warehouse_dir}/catalog_returns]
PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)]
ReadSchema: struct<cr_item_sk:int,cr_order_number:int>

(54) CometFilter
Input [3]: [cr_item_sk#30, cr_order_number#31, cr_returned_date_sk#32]
Condition : (isnotnull(cr_item_sk#30) AND isnotnull(cr_order_number#31))

(55) CometProject
Input [3]: [cr_item_sk#30, cr_order_number#31, cr_returned_date_sk#32]
Arguments: [cr_item_sk#30, cr_order_number#31], [cr_item_sk#30, cr_order_number#31]

(56) CometExchange
Input [2]: [cr_item_sk#30, cr_order_number#31]
Arguments: hashpartitioning(cr_item_sk#30, cr_order_number#31, 5), ENSURE_REQUIREMENTS, CometNativeShuffle, [plan_id=2]

(57) CometSort
Input [2]: [cr_item_sk#30, cr_order_number#31]
Arguments: [cr_item_sk#30, cr_order_number#31], [cr_item_sk#30 ASC NULLS FIRST, cr_order_number#31 ASC NULLS FIRST]

(58) CometSortMergeJoin
Left output [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Right output [2]: [cr_item_sk#30, cr_order_number#31]
Arguments: [cs_item_sk#4, cs_order_number#6], [cr_item_sk#30, cr_order_number#31], LeftOuter

(59) CometProject
Input [7]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#14, i_item_desc#16, d_week_seq#23, cr_item_sk#30, cr_order_number#31]
Arguments: [w_warehouse_name#14, i_item_desc#16, d_week_seq#23], [w_warehouse_name#14, i_item_desc#16, d_week_seq#23]

(60) CometHashAggregate
Input [3]: [w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Keys [3]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23]
Functions [1]: [partial_count(1)]

(61) CometExchange
Input [4]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, count#33]
Arguments: hashpartitioning(i_item_desc#16, w_warehouse_name#14, d_week_seq#23, 5), ENSURE_REQUIREMENTS, CometNativeShuffle, [plan_id=3]

(62) CometHashAggregate
Input [4]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, count#33]
Keys [3]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23]
Functions [1]: [count(1)]

(63) CometTakeOrderedAndProject
Input [6]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, no_promo#34, promo#35, total_cnt#36]
Arguments: TakeOrderedAndProject(limit=100, orderBy=[total_cnt#36 DESC NULLS LAST,i_item_desc#16 ASC NULLS FIRST,w_warehouse_name#14 ASC NULLS FIRST,d_week_seq#23 ASC NULLS FIRST], output=[i_item_desc#16,w_warehouse_name#14,d_week_seq#23,no_promo#34,promo#35,total_cnt#36]), [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, no_promo#34, promo#35, total_cnt#36], 100, [total_cnt#36 DESC NULLS LAST, i_item_desc#16 ASC NULLS FIRST, w_warehouse_name#14 ASC NULLS FIRST, d_week_seq#23 ASC NULLS FIRST], [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, no_promo#34, promo#35, total_cnt#36]

(64) ColumnarToRow [codegen id : 1]
Input [6]: [i_item_desc#16, w_warehouse_name#14, d_week_seq#23, no_promo#34, promo#35, total_cnt#36]

