You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by se...@apache.org on 2018/10/26 21:11:18 UTC

[08/75] [abbrv] [partial] hive git commit: HIVE-20718: Add perf cli driver with constraints (Jesus Camacho Rodriguez, reviewed by Ashutosh Chauhan)

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out
new file mode 100644
index 0000000..f27fbc9
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out
@@ -0,0 +1,297 @@
+PREHOOK: query: explain
+select  i_item_desc
+      ,w_warehouse_name
+      ,d1.d_week_seq
+      ,count(case when p_promo_sk is null then 1 else 0 end) no_promo
+      ,count(case when p_promo_sk is not null then 1 else 0 end) promo
+      ,count(*) total_cnt
+from catalog_sales
+join inventory on (cs_item_sk = inv_item_sk)
+join warehouse on (w_warehouse_sk=inv_warehouse_sk)
+join item on (i_item_sk = cs_item_sk)
+join customer_demographics on (cs_bill_cdemo_sk = cd_demo_sk)
+join household_demographics on (cs_bill_hdemo_sk = hd_demo_sk)
+join date_dim d1 on (cs_sold_date_sk = d1.d_date_sk)
+join date_dim d2 on (inv_date_sk = d2.d_date_sk)
+join date_dim d3 on (cs_ship_date_sk = d3.d_date_sk)
+left outer join promotion on (cs_promo_sk=p_promo_sk)
+left outer join catalog_returns on (cr_item_sk = cs_item_sk and cr_order_number = cs_order_number)
+where d1.d_week_seq = d2.d_week_seq
+  and inv_quantity_on_hand < cs_quantity 
+  and d3.d_date > d1.d_date + 5
+  and hd_buy_potential = '1001-5000'
+  and d1.d_year = 2001
+  and hd_buy_potential = '1001-5000'
+  and cd_marital_status = 'M'
+  and d1.d_year = 2001
+group by i_item_desc,w_warehouse_name,d1.d_week_seq
+order by total_cnt desc, i_item_desc, w_warehouse_name, d_week_seq
+limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@catalog_returns
+PREHOOK: Input: default@catalog_sales
+PREHOOK: Input: default@customer_demographics
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@household_demographics
+PREHOOK: Input: default@inventory
+PREHOOK: Input: default@item
+PREHOOK: Input: default@promotion
+PREHOOK: Input: default@warehouse
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+select  i_item_desc
+      ,w_warehouse_name
+      ,d1.d_week_seq
+      ,count(case when p_promo_sk is null then 1 else 0 end) no_promo
+      ,count(case when p_promo_sk is not null then 1 else 0 end) promo
+      ,count(*) total_cnt
+from catalog_sales
+join inventory on (cs_item_sk = inv_item_sk)
+join warehouse on (w_warehouse_sk=inv_warehouse_sk)
+join item on (i_item_sk = cs_item_sk)
+join customer_demographics on (cs_bill_cdemo_sk = cd_demo_sk)
+join household_demographics on (cs_bill_hdemo_sk = hd_demo_sk)
+join date_dim d1 on (cs_sold_date_sk = d1.d_date_sk)
+join date_dim d2 on (inv_date_sk = d2.d_date_sk)
+join date_dim d3 on (cs_ship_date_sk = d3.d_date_sk)
+left outer join promotion on (cs_promo_sk=p_promo_sk)
+left outer join catalog_returns on (cr_item_sk = cs_item_sk and cr_order_number = cs_order_number)
+where d1.d_week_seq = d2.d_week_seq
+  and inv_quantity_on_hand < cs_quantity 
+  and d3.d_date > d1.d_date + 5
+  and hd_buy_potential = '1001-5000'
+  and d1.d_year = 2001
+  and hd_buy_potential = '1001-5000'
+  and cd_marital_status = 'M'
+  and d1.d_year = 2001
+group by i_item_desc,w_warehouse_name,d1.d_week_seq
+order by total_cnt desc, i_item_desc, w_warehouse_name, d_week_seq
+limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@catalog_returns
+POSTHOOK: Input: default@catalog_sales
+POSTHOOK: Input: default@customer_demographics
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@household_demographics
+POSTHOOK: Input: default@inventory
+POSTHOOK: Input: default@item
+POSTHOOK: Input: default@promotion
+POSTHOOK: Input: default@warehouse
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Map 9 <- Reducer 17 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE)
+Reducer 10 <- Map 16 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
+Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE)
+Reducer 12 <- Map 20 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE)
+Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE)
+Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE)
+Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE)
+Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE)
+Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 25 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Map 26 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:100
+    Stage-1
+      Reducer 7 vectorized
+      File Output Operator [FS_293]
+        Limit [LIM_292] (rows=100 width=312)
+          Number of rows:100
+          Select Operator [SEL_291] (rows=384313734 width=312)
+            Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+          <-Reducer 6 [SIMPLE_EDGE] vectorized
+            SHUFFLE [RS_290]
+              Group By Operator [GBY_289] (rows=384313734 width=312)
+                Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)","count(VALUE._col1)","count(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2
+              <-Reducer 5 [SIMPLE_EDGE]
+                SHUFFLE [RS_64]
+                  PartitionCols:_col0, _col1, _col2
+                  Group By Operator [GBY_63] (rows=610435044 width=312)
+                    Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(_col3)","count(_col4)","count()"],keys:_col0, _col1, _col2
+                    Select Operator [SEL_61] (rows=1574305390 width=292)
+                      Output:["_col0","_col1","_col2","_col3","_col4"]
+                      Merge Join Operator [MERGEJOIN_246] (rows=1574305390 width=292)
+                        Conds:RS_58._col4, _col6=RS_288._col0, _col1(Left Outer),Output:["_col13","_col15","_col19","_col25"]
+                      <-Map 26 [SIMPLE_EDGE] vectorized
+                        SHUFFLE [RS_288]
+                          PartitionCols:_col0, _col1
+                          Select Operator [SEL_287] (rows=28798881 width=8)
+                            Output:["_col0","_col1"]
+                            TableScan [TS_56] (rows=28798881 width=8)
+                              default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number"]
+                      <-Reducer 4 [SIMPLE_EDGE]
+                        SHUFFLE [RS_58]
+                          PartitionCols:_col4, _col6
+                          Select Operator [SEL_55] (rows=610435044 width=300)
+                            Output:["_col4","_col6","_col13","_col15","_col19","_col25"]
+                            Merge Join Operator [MERGEJOIN_245] (rows=610435044 width=300)
+                              Conds:RS_52._col0, _col19=RS_286._col0, _col1(Inner),Output:["_col5","_col9","_col14","_col16","_col19","_col23"]
+                            <-Map 25 [SIMPLE_EDGE] vectorized
+                              SHUFFLE [RS_286]
+                                PartitionCols:_col0, _col1
+                                Select Operator [SEL_285] (rows=73049 width=8)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_284] (rows=73049 width=8)
+                                    predicate:d_week_seq is not null
+                                    TableScan [TS_42] (rows=73049 width=8)
+                                      default@date_dim,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_week_seq"]
+                            <-Reducer 3 [SIMPLE_EDGE]
+                              SHUFFLE [RS_52]
+                                PartitionCols:_col0, _col19
+                                Filter Operator [FIL_51] (rows=545947820 width=311)
+                                  predicate:(_col3 < _col17)
+                                  Merge Join Operator [MERGEJOIN_244] (rows=1637843460 width=311)
+                                    Conds:RS_48._col1=RS_49._col8(Inner),Output:["_col0","_col3","_col5","_col9","_col14","_col16","_col17","_col19","_col23"]
+                                  <-Reducer 15 [SIMPLE_EDGE]
+                                    SHUFFLE [RS_49]
+                                      PartitionCols:_col8
+                                      Select Operator [SEL_41] (rows=2726340 width=219)
+                                        Output:["_col3","_col8","_col10","_col11","_col13","_col17"]
+                                        Filter Operator [FIL_40] (rows=2726340 width=219)
+                                          predicate:(_col17 > _col10)
+                                          Merge Join Operator [MERGEJOIN_243] (rows=8179022 width=219)
+                                            Conds:RS_37._col1=RS_283._col0(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col13","_col15","_col17"]
+                                          <-Map 24 [SIMPLE_EDGE] vectorized
+                                            SHUFFLE [RS_283]
+                                              PartitionCols:_col0
+                                              Select Operator [SEL_282] (rows=73049 width=12)
+                                                Output:["_col0","_col1"]
+                                                TableScan [TS_20] (rows=73049 width=98)
+                                                  default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"]
+                                          <-Reducer 14 [SIMPLE_EDGE]
+                                            SHUFFLE [RS_37]
+                                              PartitionCols:_col1
+                                              Merge Join Operator [MERGEJOIN_242] (rows=8179022 width=214)
+                                                Conds:RS_34._col4=RS_281._col0(Inner),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13","_col15"]
+                                              <-Map 23 [SIMPLE_EDGE] vectorized
+                                                SHUFFLE [RS_281]
+                                                  PartitionCols:_col0
+                                                  Select Operator [SEL_280] (rows=462000 width=188)
+                                                    Output:["_col0","_col1"]
+                                                    TableScan [TS_18] (rows=462000 width=188)
+                                                      default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc"]
+                                              <-Reducer 13 [SIMPLE_EDGE]
+                                                SHUFFLE [RS_34]
+                                                  PartitionCols:_col4
+                                                  Merge Join Operator [MERGEJOIN_241] (rows=8179022 width=30)
+                                                    Conds:RS_31._col5=RS_279._col0(Left Outer),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13"]
+                                                  <-Map 22 [SIMPLE_EDGE] vectorized
+                                                    SHUFFLE [RS_279]
+                                                      PartitionCols:_col0
+                                                      Select Operator [SEL_278] (rows=2300 width=4)
+                                                        Output:["_col0"]
+                                                        TableScan [TS_16] (rows=2300 width=4)
+                                                          default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk"]
+                                                  <-Reducer 12 [SIMPLE_EDGE]
+                                                    SHUFFLE [RS_31]
+                                                      PartitionCols:_col5
+                                                      Merge Join Operator [MERGEJOIN_240] (rows=8179022 width=29)
+                                                        Conds:RS_28._col3=RS_269._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col9","_col10"]
+                                                      <-Map 20 [SIMPLE_EDGE] vectorized
+                                                        PARTITION_ONLY_SHUFFLE [RS_269]
+                                                          PartitionCols:_col0
+                                                          Select Operator [SEL_268] (rows=1440 width=4)
+                                                            Output:["_col0"]
+                                                            Filter Operator [FIL_267] (rows=1440 width=96)
+                                                              predicate:(hd_buy_potential = '1001-5000')
+                                                              TableScan [TS_13] (rows=7200 width=96)
+                                                                default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential"]
+                                                      <-Reducer 11 [SIMPLE_EDGE]
+                                                        SHUFFLE [RS_28]
+                                                          PartitionCols:_col3
+                                                          Merge Join Operator [MERGEJOIN_239] (rows=40895108 width=35)
+                                                            Conds:RS_25._col2=RS_261._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col9","_col10"]
+                                                          <-Map 18 [SIMPLE_EDGE] vectorized
+                                                            PARTITION_ONLY_SHUFFLE [RS_261]
+                                                              PartitionCols:_col0
+                                                              Select Operator [SEL_260] (rows=265971 width=4)
+                                                                Output:["_col0"]
+                                                                Filter Operator [FIL_259] (rows=265971 width=89)
+                                                                  predicate:(cd_marital_status = 'M')
+                                                                  TableScan [TS_10] (rows=1861800 width=89)
+                                                                    default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status"]
+                                                          <-Reducer 10 [SIMPLE_EDGE]
+                                                            SHUFFLE [RS_25]
+                                                              PartitionCols:_col2
+                                                              Merge Join Operator [MERGEJOIN_238] (rows=100076475 width=39)
+                                                                Conds:RS_277._col0=RS_253._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10"]
+                                                              <-Map 16 [SIMPLE_EDGE] vectorized
+                                                                PARTITION_ONLY_SHUFFLE [RS_253]
+                                                                  PartitionCols:_col0
+                                                                  Select Operator [SEL_252] (rows=652 width=16)
+                                                                    Output:["_col0","_col1","_col2"]
+                                                                    Filter Operator [FIL_251] (rows=652 width=106)
+                                                                      predicate:((d_year = 2001) and d_week_seq is not null)
+                                                                      TableScan [TS_7] (rows=73049 width=106)
+                                                                        default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date","d_week_seq","d_year"]
+                                                              <-Map 9 [SIMPLE_EDGE] vectorized
+                                                                SHUFFLE [RS_277]
+                                                                  PartitionCols:_col0
+                                                                  Select Operator [SEL_276] (rows=282274763 width=31)
+                                                                    Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+                                                                    Filter Operator [FIL_275] (rows=282274763 width=31)
+                                                                      predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_26_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_26_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_26_customer_demographics_cd_demo_sk_bloom_filter))) and (cs_bill_hdemo_sk BETWEEN DynamicValue(RS_29_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_29_household_demographics_hd_demo_sk_max) and in_bloom_filter(cs_bill_hdemo_sk, DynamicValue(RS_29_household_demographics_hd_demo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_23_d1_d_date_sk_min) AND DynamicValue(RS_23_d1_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d1_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_hdemo_sk is not null and cs_ship_date_sk is not null and cs_sold_date_sk is not null)
+                                                                      TableScan [TS_4] (rows=287989836 width=31)
+                                                                        default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_date_sk","cs_bill_cdemo_sk","cs_bill_hdemo_sk","cs_item_sk","cs_promo_sk","cs_order_number","cs_quantity"]
+                                                                      <-Reducer 17 [BROADCAST_EDGE] vectorized
+                                                                        BROADCAST [RS_258]
+                                                                          Group By Operator [GBY_257] (rows=1 width=12)
+                                                                            Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                                          <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                                            PARTITION_ONLY_SHUFFLE [RS_256]
+                                                                              Group By Operator [GBY_255] (rows=1 width=12)
+                                                                                Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                                                Select Operator [SEL_254] (rows=652 width=4)
+                                                                                  Output:["_col0"]
+                                                                                   Please refer to the previous Select Operator [SEL_252]
+                                                                      <-Reducer 19 [BROADCAST_EDGE] vectorized
+                                                                        BROADCAST [RS_266]
+                                                                          Group By Operator [GBY_265] (rows=1 width=12)
+                                                                            Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                                          <-Map 18 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                                            PARTITION_ONLY_SHUFFLE [RS_264]
+                                                                              Group By Operator [GBY_263] (rows=1 width=12)
+                                                                                Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                                                Select Operator [SEL_262] (rows=265971 width=4)
+                                                                                  Output:["_col0"]
+                                                                                   Please refer to the previous Select Operator [SEL_260]
+                                                                      <-Reducer 21 [BROADCAST_EDGE] vectorized
+                                                                        BROADCAST [RS_274]
+                                                                          Group By Operator [GBY_273] (rows=1 width=12)
+                                                                            Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                                          <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                                            PARTITION_ONLY_SHUFFLE [RS_272]
+                                                                              Group By Operator [GBY_271] (rows=1 width=12)
+                                                                                Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                                                Select Operator [SEL_270] (rows=1440 width=4)
+                                                                                  Output:["_col0"]
+                                                                                   Please refer to the previous Select Operator [SEL_268]
+                                  <-Reducer 2 [SIMPLE_EDGE]
+                                    SHUFFLE [RS_48]
+                                      PartitionCols:_col1
+                                      Merge Join Operator [MERGEJOIN_237] (rows=37584000 width=111)
+                                        Conds:RS_248._col2=RS_250._col0(Inner),Output:["_col0","_col1","_col3","_col5"]
+                                      <-Map 1 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_248]
+                                          PartitionCols:_col2
+                                          Select Operator [SEL_247] (rows=37584000 width=15)
+                                            Output:["_col0","_col1","_col2","_col3"]
+                                            TableScan [TS_0] (rows=37584000 width=15)
+                                              default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_warehouse_sk","inv_quantity_on_hand"]
+                                      <-Map 8 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_250]
+                                          PartitionCols:_col0
+                                          Select Operator [SEL_249] (rows=27 width=104)
+                                            Output:["_col0","_col1"]
+                                            TableScan [TS_2] (rows=27 width=104)
+                                              default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name"]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out
new file mode 100644
index 0000000..45ddfd5
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out
@@ -0,0 +1,197 @@
+PREHOOK: query: explain
+select c_last_name
+       ,c_first_name
+       ,c_salutation
+       ,c_preferred_cust_flag 
+       ,ss_ticket_number
+       ,cnt from
+   (select ss_ticket_number
+          ,ss_customer_sk
+          ,count(*) cnt
+    from store_sales,date_dim,store,household_demographics
+    where store_sales.ss_sold_date_sk = date_dim.d_date_sk
+    and store_sales.ss_store_sk = store.s_store_sk  
+    and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
+    and date_dim.d_dom between 1 and 2 
+    and (household_demographics.hd_buy_potential = '>10000' or
+         household_demographics.hd_buy_potential = 'unknown')
+    and household_demographics.hd_vehicle_count > 0
+    and case when household_demographics.hd_vehicle_count > 0 then 
+             household_demographics.hd_dep_count/ household_demographics.hd_vehicle_count else null end > 1
+    and date_dim.d_year in (2000,2000+1,2000+2)
+    and store.s_county in ('Mobile County','Maverick County','Huron County','Kittitas County')
+    group by ss_ticket_number,ss_customer_sk) dj,customer
+    where ss_customer_sk = c_customer_sk
+      and cnt between 1 and 5
+    order by cnt desc
+PREHOOK: type: QUERY
+PREHOOK: Input: default@customer
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@household_demographics
+PREHOOK: Input: default@store
+PREHOOK: Input: default@store_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+select c_last_name
+       ,c_first_name
+       ,c_salutation
+       ,c_preferred_cust_flag 
+       ,ss_ticket_number
+       ,cnt from
+   (select ss_ticket_number
+          ,ss_customer_sk
+          ,count(*) cnt
+    from store_sales,date_dim,store,household_demographics
+    where store_sales.ss_sold_date_sk = date_dim.d_date_sk
+    and store_sales.ss_store_sk = store.s_store_sk  
+    and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
+    and date_dim.d_dom between 1 and 2 
+    and (household_demographics.hd_buy_potential = '>10000' or
+         household_demographics.hd_buy_potential = 'unknown')
+    and household_demographics.hd_vehicle_count > 0
+    and case when household_demographics.hd_vehicle_count > 0 then 
+             household_demographics.hd_dep_count/ household_demographics.hd_vehicle_count else null end > 1
+    and date_dim.d_year in (2000,2000+1,2000+2)
+    and store.s_county in ('Mobile County','Maverick County','Huron County','Kittitas County')
+    group by ss_ticket_number,ss_customer_sk) dj,customer
+    where ss_customer_sk = c_customer_sk
+      and cnt between 1 and 5
+    order by cnt desc
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@customer
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@household_demographics
+POSTHOOK: Input: default@store
+POSTHOOK: Input: default@store_sales
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE)
+Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE)
+Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE)
+Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
+Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
+Reducer 6 <- Map 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE)
+Reducer 7 <- Map 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE)
+Reducer 8 <- Reducer 7 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:-1
+    Stage-1
+      Reducer 3 vectorized
+      File Output Operator [FS_134]
+        Select Operator [SEL_133] (rows=59862 width=364)
+          Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+        <-Reducer 2 [SIMPLE_EDGE]
+          SHUFFLE [RS_34]
+            Select Operator [SEL_33] (rows=59862 width=364)
+              Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+              Merge Join Operator [MERGEJOIN_99] (rows=59862 width=364)
+                Conds:RS_101._col0=RS_132._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"]
+              <-Map 1 [SIMPLE_EDGE] vectorized
+                SHUFFLE [RS_101]
+                  PartitionCols:_col0
+                  Select Operator [SEL_100] (rows=80000000 width=356)
+                    Output:["_col0","_col1","_col2","_col3","_col4"]
+                    TableScan [TS_0] (rows=80000000 width=356)
+                      default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"]
+              <-Reducer 8 [SIMPLE_EDGE] vectorized
+                SHUFFLE [RS_132]
+                  PartitionCols:_col1
+                  Filter Operator [FIL_131] (rows=59862 width=12)
+                    predicate:_col2 BETWEEN 1 AND 5
+                    Select Operator [SEL_130] (rows=1197233 width=12)
+                      Output:["_col0","_col1","_col2"]
+                      Group By Operator [GBY_129] (rows=1197233 width=12)
+                        Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1
+                      <-Reducer 7 [SIMPLE_EDGE]
+                        SHUFFLE [RS_25]
+                          PartitionCols:_col0, _col1
+                          Group By Operator [GBY_24] (rows=1197233 width=12)
+                            Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4
+                            Merge Join Operator [MERGEJOIN_98] (rows=1197233 width=4)
+                              Conds:RS_20._col3=RS_120._col0(Inner),Output:["_col1","_col4"]
+                            <-Map 13 [SIMPLE_EDGE] vectorized
+                              SHUFFLE [RS_120]
+                                PartitionCols:_col0
+                                Select Operator [SEL_119] (rows=85 width=4)
+                                  Output:["_col0"]
+                                  Filter Operator [FIL_118] (rows=85 width=102)
+                                    predicate:(s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County')
+                                    TableScan [TS_11] (rows=1704 width=102)
+                                      default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_county"]
+                            <-Reducer 6 [SIMPLE_EDGE]
+                              SHUFFLE [RS_20]
+                                PartitionCols:_col3
+                                Merge Join Operator [MERGEJOIN_97] (rows=2973700 width=4)
+                                  Conds:RS_17._col2=RS_112._col0(Inner),Output:["_col1","_col3","_col4"]
+                                <-Map 11 [SIMPLE_EDGE] vectorized
+                                  SHUFFLE [RS_112]
+                                    PartitionCols:_col0
+                                    Select Operator [SEL_111] (rows=480 width=4)
+                                      Output:["_col0"]
+                                      Filter Operator [FIL_110] (rows=480 width=104)
+                                        predicate:((hd_buy_potential) IN ('>10000', 'unknown') and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.0D)) ELSE (null) END)
+                                        TableScan [TS_8] (rows=7200 width=104)
+                                          default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"]
+                                <-Reducer 5 [SIMPLE_EDGE]
+                                  SHUFFLE [RS_17]
+                                    PartitionCols:_col2
+                                    Merge Join Operator [MERGEJOIN_96] (rows=44605486 width=10)
+                                      Conds:RS_128._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
+                                    <-Map 9 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_104]
+                                        PartitionCols:_col0
+                                        Select Operator [SEL_103] (rows=170 width=4)
+                                          Output:["_col0"]
+                                          Filter Operator [FIL_102] (rows=170 width=12)
+                                            predicate:((d_year) IN (2000, 2001, 2002) and d_dom BETWEEN 1 AND 2)
+                                            TableScan [TS_5] (rows=73049 width=12)
+                                              default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"]
+                                    <-Map 4 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_128]
+                                        PartitionCols:_col0
+                                        Select Operator [SEL_127] (rows=479121995 width=19)
+                                          Output:["_col0","_col1","_col2","_col3","_col4"]
+                                          Filter Operator [FIL_126] (rows=479121995 width=19)
+                                            predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_18_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_18_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_18_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_21_store_s_store_sk_min) AND DynamicValue(RS_21_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_21_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null)
+                                            TableScan [TS_2] (rows=575995635 width=19)
+                                              default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"]
+                                            <-Reducer 10 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_109]
+                                                Group By Operator [GBY_108] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                  SHUFFLE [RS_107]
+                                                    Group By Operator [GBY_106] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_105] (rows=170 width=4)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_103]
+                                            <-Reducer 12 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_117]
+                                                Group By Operator [GBY_116] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                  SHUFFLE [RS_115]
+                                                    Group By Operator [GBY_114] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_113] (rows=480 width=4)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_111]
+                                            <-Reducer 14 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_125]
+                                                Group By Operator [GBY_124] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                  SHUFFLE [RS_123]
+                                                    Group By Operator [GBY_122] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_121] (rows=85 width=4)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_119]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out
new file mode 100644
index 0000000..39b3f0a
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out
@@ -0,0 +1,397 @@
+PREHOOK: query: explain
+with year_total as (
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,d_year as year
+       ,max(ss_net_paid) year_total
+       ,'s' sale_type
+ from customer
+     ,store_sales
+     ,date_dim
+ where c_customer_sk = ss_customer_sk
+   and ss_sold_date_sk = d_date_sk
+   and d_year in (2001,2001+1)
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+ union all
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,d_year as year
+       ,max(ws_net_paid) year_total
+       ,'w' sale_type
+ from customer
+     ,web_sales
+     ,date_dim
+ where c_customer_sk = ws_bill_customer_sk
+   and ws_sold_date_sk = d_date_sk
+   and d_year in (2001,2001+1)
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+         )
+  select 
+        t_s_secyear.customer_id, t_s_secyear.customer_first_name, t_s_secyear.customer_last_name
+ from year_total t_s_firstyear
+     ,year_total t_s_secyear
+     ,year_total t_w_firstyear
+     ,year_total t_w_secyear
+ where t_s_secyear.customer_id = t_s_firstyear.customer_id
+         and t_s_firstyear.customer_id = t_w_secyear.customer_id
+         and t_s_firstyear.customer_id = t_w_firstyear.customer_id
+         and t_s_firstyear.sale_type = 's'
+         and t_w_firstyear.sale_type = 'w'
+         and t_s_secyear.sale_type = 's'
+         and t_w_secyear.sale_type = 'w'
+         and t_s_firstyear.year = 2001
+         and t_s_secyear.year = 2001+1
+         and t_w_firstyear.year = 2001
+         and t_w_secyear.year = 2001+1
+         and t_s_firstyear.year_total > 0
+         and t_w_firstyear.year_total > 0
+         and case when t_w_firstyear.year_total > 0 then t_w_secyear.year_total / t_w_firstyear.year_total else null end
+           > case when t_s_firstyear.year_total > 0 then t_s_secyear.year_total / t_s_firstyear.year_total else null end
+ order by 2,1,3
+limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@customer
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@store_sales
+PREHOOK: Input: default@web_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+with year_total as (
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,d_year as year
+       ,max(ss_net_paid) year_total
+       ,'s' sale_type
+ from customer
+     ,store_sales
+     ,date_dim
+ where c_customer_sk = ss_customer_sk
+   and ss_sold_date_sk = d_date_sk
+   and d_year in (2001,2001+1)
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+ union all
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,d_year as year
+       ,max(ws_net_paid) year_total
+       ,'w' sale_type
+ from customer
+     ,web_sales
+     ,date_dim
+ where c_customer_sk = ws_bill_customer_sk
+   and ws_sold_date_sk = d_date_sk
+   and d_year in (2001,2001+1)
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+         )
+  select 
+        t_s_secyear.customer_id, t_s_secyear.customer_first_name, t_s_secyear.customer_last_name
+ from year_total t_s_firstyear
+     ,year_total t_s_secyear
+     ,year_total t_w_firstyear
+     ,year_total t_w_secyear
+ where t_s_secyear.customer_id = t_s_firstyear.customer_id
+         and t_s_firstyear.customer_id = t_w_secyear.customer_id
+         and t_s_firstyear.customer_id = t_w_firstyear.customer_id
+         and t_s_firstyear.sale_type = 's'
+         and t_w_firstyear.sale_type = 'w'
+         and t_s_secyear.sale_type = 's'
+         and t_w_secyear.sale_type = 'w'
+         and t_s_firstyear.year = 2001
+         and t_s_secyear.year = 2001+1
+         and t_w_firstyear.year = 2001
+         and t_w_secyear.year = 2001+1
+         and t_s_firstyear.year_total > 0
+         and t_w_firstyear.year_total > 0
+         and case when t_w_firstyear.year_total > 0 then t_w_secyear.year_total / t_w_firstyear.year_total else null end
+           > case when t_s_firstyear.year_total > 0 then t_s_secyear.year_total / t_s_firstyear.year_total else null end
+ order by 2,1,3
+limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@customer
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@store_sales
+POSTHOOK: Input: default@web_sales
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Map 1 <- Reducer 23 (BROADCAST_EDGE)
+Map 13 <- Reducer 25 (BROADCAST_EDGE)
+Map 17 <- Reducer 22 (BROADCAST_EDGE)
+Map 9 <- Reducer 24 (BROADCAST_EDGE)
+Reducer 10 <- Map 21 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
+Reducer 11 <- Map 26 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE)
+Reducer 12 <- Reducer 11 (SIMPLE_EDGE)
+Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE)
+Reducer 15 <- Map 26 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE)
+Reducer 16 <- Reducer 15 (SIMPLE_EDGE)
+Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE)
+Reducer 19 <- Map 26 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE)
+Reducer 20 <- Reducer 19 (SIMPLE_EDGE)
+Reducer 22 <- Map 21 (CUSTOM_SIMPLE_EDGE)
+Reducer 23 <- Map 21 (CUSTOM_SIMPLE_EDGE)
+Reducer 24 <- Map 21 (CUSTOM_SIMPLE_EDGE)
+Reducer 25 <- Map 21 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Map 26 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 16 (SIMPLE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE)
+Reducer 7 <- Reducer 20 (SIMPLE_EDGE), Reducer 6 (ONE_TO_ONE_EDGE)
+Reducer 8 <- Reducer 7 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:100
+    Stage-1
+      Reducer 8 vectorized
+      File Output Operator [FS_348]
+        Limit [LIM_347] (rows=100 width=280)
+          Number of rows:100
+          Select Operator [SEL_346] (rows=12248093 width=280)
+            Output:["_col0","_col1","_col2"]
+          <-Reducer 7 [SIMPLE_EDGE]
+            SHUFFLE [RS_89]
+              Select Operator [SEL_88] (rows=12248093 width=280)
+                Output:["_col0","_col1","_col2"]
+                Filter Operator [FIL_87] (rows=12248093 width=736)
+                  predicate:CASE WHEN (_col4) THEN (CASE WHEN (_col7) THEN (((_col1 / _col6) > (_col11 / _col3))) ELSE ((null > (_col11 / _col3))) END) ELSE (CASE WHEN (_col7) THEN (((_col1 / _col6) > null)) ELSE (null) END) END
+                  Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=736)
+                    Conds:RS_84._col2=RS_345._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col8","_col9","_col10","_col11"]
+                  <-Reducer 20 [SIMPLE_EDGE] vectorized
+                    SHUFFLE [RS_345]
+                      PartitionCols:_col0
+                      Group By Operator [GBY_344] (rows=80000000 width=392)
+                        Output:["_col0","_col1","_col2","_col3"],aggregations:["max(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2
+                      <-Reducer 19 [SIMPLE_EDGE]
+                        SHUFFLE [RS_75]
+                          PartitionCols:_col0, _col1, _col2
+                          Group By Operator [GBY_74] (rows=80000000 width=392)
+                            Output:["_col0","_col1","_col2","_col3"],aggregations:["max(_col2)"],keys:_col5, _col6, _col7
+                            Merge Join Operator [MERGEJOIN_280] (rows=187573258 width=377)
+                              Conds:RS_70._col1=RS_312._col0(Inner),Output:["_col2","_col5","_col6","_col7"]
+                            <-Map 26 [SIMPLE_EDGE] vectorized
+                              SHUFFLE [RS_312]
+                                PartitionCols:_col0
+                                Select Operator [SEL_311] (rows=80000000 width=284)
+                                  Output:["_col0","_col1","_col2","_col3"]
+                                  TableScan [TS_65] (rows=80000000 width=284)
+                                    default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_customer_id","c_first_name","c_last_name"]
+                            <-Reducer 18 [SIMPLE_EDGE]
+                              SHUFFLE [RS_70]
+                                PartitionCols:_col1
+                                Merge Join Operator [MERGEJOIN_279] (rows=187573258 width=101)
+                                  Conds:RS_343._col0=RS_290._col0(Inner),Output:["_col1","_col2"]
+                                <-Map 21 [SIMPLE_EDGE] vectorized
+                                  PARTITION_ONLY_SHUFFLE [RS_290]
+                                    PartitionCols:_col0
+                                    Select Operator [SEL_287] (rows=652 width=4)
+                                      Output:["_col0"]
+                                      Filter Operator [FIL_284] (rows=652 width=8)
+                                        predicate:((d_year = 2002) and (d_year) IN (2001, 2002))
+                                        TableScan [TS_62] (rows=73049 width=8)
+                                          default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"]
+                                <-Map 17 [SIMPLE_EDGE] vectorized
+                                  SHUFFLE [RS_343]
+                                    PartitionCols:_col0
+                                    Select Operator [SEL_342] (rows=525327388 width=114)
+                                      Output:["_col0","_col1","_col2"]
+                                      Filter Operator [FIL_341] (rows=525327388 width=114)
+                                        predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_68_date_dim_d_date_sk_min) AND DynamicValue(RS_68_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_68_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null)
+                                        TableScan [TS_59] (rows=575995635 width=114)
+                                          default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_net_paid"]
+                                        <-Reducer 22 [BROADCAST_EDGE] vectorized
+                                          BROADCAST [RS_340]
+                                            Group By Operator [GBY_339] (rows=1 width=12)
+                                              Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                            <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized
+                                              PARTITION_ONLY_SHUFFLE [RS_302]
+                                                Group By Operator [GBY_298] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                  Select Operator [SEL_291] (rows=652 width=4)
+                                                    Output:["_col0"]
+                                                     Please refer to the previous Select Operator [SEL_287]
+                  <-Reducer 6 [ONE_TO_ONE_EDGE]
+                    FORWARD [RS_84]
+                      PartitionCols:_col2
+                      Merge Join Operator [MERGEJOIN_282] (rows=20485011 width=444)
+                        Conds:RS_81._col2=RS_338._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7"]
+                      <-Reducer 16 [SIMPLE_EDGE] vectorized
+                        SHUFFLE [RS_338]
+                          PartitionCols:_col0
+                          Select Operator [SEL_337] (rows=17130654 width=216)
+                            Output:["_col0","_col1","_col2"]
+                            Filter Operator [FIL_336] (rows=17130654 width=212)
+                              predicate:(_col3 > 0)
+                              Select Operator [SEL_335] (rows=51391963 width=212)
+                                Output:["_col0","_col3"]
+                                Group By Operator [GBY_334] (rows=51391963 width=392)
+                                  Output:["_col0","_col1","_col2","_col3"],aggregations:["max(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2
+                                <-Reducer 15 [SIMPLE_EDGE]
+                                  SHUFFLE [RS_55]
+                                    PartitionCols:_col0, _col1, _col2
+                                    Group By Operator [GBY_54] (rows=51391963 width=392)
+                                      Output:["_col0","_col1","_col2","_col3"],aggregations:["max(_col2)"],keys:_col5, _col6, _col7
+                                      Merge Join Operator [MERGEJOIN_278] (rows=51391963 width=391)
+                                        Conds:RS_50._col1=RS_315._col0(Inner),Output:["_col2","_col5","_col6","_col7"]
+                                      <-Map 26 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_315]
+                                          PartitionCols:_col0
+                                           Please refer to the previous Select Operator [SEL_311]
+                                      <-Reducer 14 [SIMPLE_EDGE]
+                                        SHUFFLE [RS_50]
+                                          PartitionCols:_col1
+                                          Merge Join Operator [MERGEJOIN_277] (rows=51391963 width=115)
+                                            Conds:RS_333._col0=RS_296._col0(Inner),Output:["_col1","_col2"]
+                                          <-Map 21 [SIMPLE_EDGE] vectorized
+                                            PARTITION_ONLY_SHUFFLE [RS_296]
+                                              PartitionCols:_col0
+                                              Select Operator [SEL_289] (rows=652 width=4)
+                                                Output:["_col0"]
+                                                Filter Operator [FIL_286] (rows=652 width=8)
+                                                  predicate:((d_year = 2001) and (d_year) IN (2001, 2002))
+                                                   Please refer to the previous TableScan [TS_62]
+                                          <-Map 13 [SIMPLE_EDGE] vectorized
+                                            SHUFFLE [RS_333]
+                                              PartitionCols:_col0
+                                              Select Operator [SEL_332] (rows=143930993 width=119)
+                                                Output:["_col0","_col1","_col2"]
+                                                Filter Operator [FIL_331] (rows=143930993 width=119)
+                                                  predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_48_date_dim_d_date_sk_min) AND DynamicValue(RS_48_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_48_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null)
+                                                  TableScan [TS_39] (rows=144002668 width=119)
+                                                    default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk","ws_net_paid"]
+                                                  <-Reducer 25 [BROADCAST_EDGE] vectorized
+                                                    BROADCAST [RS_330]
+                                                      Group By Operator [GBY_329] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                      <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                        PARTITION_ONLY_SHUFFLE [RS_305]
+                                                          Group By Operator [GBY_301] (rows=1 width=12)
+                                                            Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                            Select Operator [SEL_297] (rows=652 width=4)
+                                                              Output:["_col0"]
+                                                               Please refer to the previous Select Operator [SEL_289]
+                      <-Reducer 5 [ONE_TO_ONE_EDGE]
+                        FORWARD [RS_81]
+                          PartitionCols:_col2
+                          Merge Join Operator [MERGEJOIN_281] (rows=31888273 width=328)
+                            Conds:RS_318._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
+                          <-Reducer 12 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_328]
+                              PartitionCols:_col0
+                              Select Operator [SEL_327] (rows=26666666 width=216)
+                                Output:["_col0","_col1","_col2"]
+                                Filter Operator [FIL_326] (rows=26666666 width=212)
+                                  predicate:(_col3 > 0)
+                                  Select Operator [SEL_325] (rows=80000000 width=212)
+                                    Output:["_col0","_col3"]
+                                    Group By Operator [GBY_324] (rows=80000000 width=392)
+                                      Output:["_col0","_col1","_col2","_col3"],aggregations:["max(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2
+                                    <-Reducer 11 [SIMPLE_EDGE]
+                                      SHUFFLE [RS_35]
+                                        PartitionCols:_col0, _col1, _col2
+                                        Group By Operator [GBY_34] (rows=80000000 width=392)
+                                          Output:["_col0","_col1","_col2","_col3"],aggregations:["max(_col2)"],keys:_col5, _col6, _col7
+                                          Merge Join Operator [MERGEJOIN_276] (rows=187573258 width=377)
+                                            Conds:RS_30._col1=RS_314._col0(Inner),Output:["_col2","_col5","_col6","_col7"]
+                                          <-Map 26 [SIMPLE_EDGE] vectorized
+                                            SHUFFLE [RS_314]
+                                              PartitionCols:_col0
+                                               Please refer to the previous Select Operator [SEL_311]
+                                          <-Reducer 10 [SIMPLE_EDGE]
+                                            SHUFFLE [RS_30]
+                                              PartitionCols:_col1
+                                              Merge Join Operator [MERGEJOIN_275] (rows=187573258 width=101)
+                                                Conds:RS_323._col0=RS_294._col0(Inner),Output:["_col1","_col2"]
+                                              <-Map 21 [SIMPLE_EDGE] vectorized
+                                                PARTITION_ONLY_SHUFFLE [RS_294]
+                                                  PartitionCols:_col0
+                                                  Select Operator [SEL_288] (rows=652 width=4)
+                                                    Output:["_col0"]
+                                                    Filter Operator [FIL_285] (rows=652 width=8)
+                                                      predicate:((d_year = 2001) and (d_year) IN (2001, 2002))
+                                                       Please refer to the previous TableScan [TS_62]
+                                              <-Map 9 [SIMPLE_EDGE] vectorized
+                                                SHUFFLE [RS_323]
+                                                  PartitionCols:_col0
+                                                  Select Operator [SEL_322] (rows=525327388 width=114)
+                                                    Output:["_col0","_col1","_col2"]
+                                                    Filter Operator [FIL_321] (rows=525327388 width=114)
+                                                      predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null)
+                                                      TableScan [TS_19] (rows=575995635 width=114)
+                                                        default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_net_paid"]
+                                                      <-Reducer 24 [BROADCAST_EDGE] vectorized
+                                                        BROADCAST [RS_320]
+                                                          Group By Operator [GBY_319] (rows=1 width=12)
+                                                            Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                          <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                            PARTITION_ONLY_SHUFFLE [RS_304]
+                                                              Group By Operator [GBY_300] (rows=1 width=12)
+                                                                Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                                Select Operator [SEL_295] (rows=652 width=4)
+                                                                  Output:["_col0"]
+                                                                   Please refer to the previous Select Operator [SEL_288]
+                          <-Reducer 4 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_318]
+                              PartitionCols:_col0
+                              Select Operator [SEL_317] (rows=51391963 width=212)
+                                Output:["_col0","_col1"]
+                                Group By Operator [GBY_316] (rows=51391963 width=392)
+                                  Output:["_col0","_col1","_col2","_col3"],aggregations:["max(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2
+                                <-Reducer 3 [SIMPLE_EDGE]
+                                  SHUFFLE [RS_16]
+                                    PartitionCols:_col0, _col1, _col2
+                                    Group By Operator [GBY_15] (rows=51391963 width=392)
+                                      Output:["_col0","_col1","_col2","_col3"],aggregations:["max(_col2)"],keys:_col5, _col6, _col7
+                                      Merge Join Operator [MERGEJOIN_274] (rows=51391963 width=391)
+                                        Conds:RS_11._col1=RS_313._col0(Inner),Output:["_col2","_col5","_col6","_col7"]
+                                      <-Map 26 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_313]
+                                          PartitionCols:_col0
+                                           Please refer to the previous Select Operator [SEL_311]
+                                      <-Reducer 2 [SIMPLE_EDGE]
+                                        SHUFFLE [RS_11]
+                                          PartitionCols:_col1
+                                          Merge Join Operator [MERGEJOIN_273] (rows=51391963 width=115)
+                                            Conds:RS_310._col0=RS_292._col0(Inner),Output:["_col1","_col2"]
+                                          <-Map 21 [SIMPLE_EDGE] vectorized
+                                            PARTITION_ONLY_SHUFFLE [RS_292]
+                                              PartitionCols:_col0
+                                               Please refer to the previous Select Operator [SEL_287]
+                                          <-Map 1 [SIMPLE_EDGE] vectorized
+                                            SHUFFLE [RS_310]
+                                              PartitionCols:_col0
+                                              Select Operator [SEL_309] (rows=143930993 width=119)
+                                                Output:["_col0","_col1","_col2"]
+                                                Filter Operator [FIL_308] (rows=143930993 width=119)
+                                                  predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_9_date_dim_d_date_sk_min) AND DynamicValue(RS_9_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_9_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null)
+                                                  TableScan [TS_0] (rows=144002668 width=119)
+                                                    default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk","ws_net_paid"]
+                                                  <-Reducer 23 [BROADCAST_EDGE] vectorized
+                                                    BROADCAST [RS_307]
+                                                      Group By Operator [GBY_306] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                      <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                        PARTITION_ONLY_SHUFFLE [RS_303]
+                                                          Group By Operator [GBY_299] (rows=1 width=12)
+                                                            Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                            Select Operator [SEL_293] (rows=652 width=4)
+                                                              Output:["_col0"]
+                                                               Please refer to the previous Select Operator [SEL_287]
+