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

[13/51] [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/query59.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out
new file mode 100644
index 0000000..4e7c921
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out
@@ -0,0 +1,234 @@
+PREHOOK: query: explain
+with wss as 
+ (select d_week_seq,
+        ss_store_sk,
+        sum(case when (d_day_name='Sunday') then ss_sales_price else null end) sun_sales,
+        sum(case when (d_day_name='Monday') then ss_sales_price else null end) mon_sales,
+        sum(case when (d_day_name='Tuesday') then ss_sales_price else  null end) tue_sales,
+        sum(case when (d_day_name='Wednesday') then ss_sales_price else null end) wed_sales,
+        sum(case when (d_day_name='Thursday') then ss_sales_price else null end) thu_sales,
+        sum(case when (d_day_name='Friday') then ss_sales_price else null end) fri_sales,
+        sum(case when (d_day_name='Saturday') then ss_sales_price else null end) sat_sales
+ from store_sales,date_dim
+ where d_date_sk = ss_sold_date_sk
+ group by d_week_seq,ss_store_sk
+ )
+  select  s_store_name1,s_store_id1,d_week_seq1
+       ,sun_sales1/sun_sales2,mon_sales1/mon_sales2
+       ,tue_sales1/tue_sales1,wed_sales1/wed_sales2,thu_sales1/thu_sales2
+       ,fri_sales1/fri_sales2,sat_sales1/sat_sales2
+ from
+ (select s_store_name s_store_name1,wss.d_week_seq d_week_seq1
+        ,s_store_id s_store_id1,sun_sales sun_sales1
+        ,mon_sales mon_sales1,tue_sales tue_sales1
+        ,wed_sales wed_sales1,thu_sales thu_sales1
+        ,fri_sales fri_sales1,sat_sales sat_sales1
+  from wss,store,date_dim d
+  where d.d_week_seq = wss.d_week_seq and
+        ss_store_sk = s_store_sk and 
+        d_month_seq between 1185 and 1185 + 11) y,
+ (select s_store_name s_store_name2,wss.d_week_seq d_week_seq2
+        ,s_store_id s_store_id2,sun_sales sun_sales2
+        ,mon_sales mon_sales2,tue_sales tue_sales2
+        ,wed_sales wed_sales2,thu_sales thu_sales2
+        ,fri_sales fri_sales2,sat_sales sat_sales2
+  from wss,store,date_dim d
+  where d.d_week_seq = wss.d_week_seq and
+        ss_store_sk = s_store_sk and 
+        d_month_seq between 1185+ 12 and 1185 + 23) x
+ where s_store_id1=s_store_id2
+   and d_week_seq1=d_week_seq2-52
+ order by s_store_name1,s_store_id1,d_week_seq1
+limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@store
+PREHOOK: Input: default@store_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+with wss as 
+ (select d_week_seq,
+        ss_store_sk,
+        sum(case when (d_day_name='Sunday') then ss_sales_price else null end) sun_sales,
+        sum(case when (d_day_name='Monday') then ss_sales_price else null end) mon_sales,
+        sum(case when (d_day_name='Tuesday') then ss_sales_price else  null end) tue_sales,
+        sum(case when (d_day_name='Wednesday') then ss_sales_price else null end) wed_sales,
+        sum(case when (d_day_name='Thursday') then ss_sales_price else null end) thu_sales,
+        sum(case when (d_day_name='Friday') then ss_sales_price else null end) fri_sales,
+        sum(case when (d_day_name='Saturday') then ss_sales_price else null end) sat_sales
+ from store_sales,date_dim
+ where d_date_sk = ss_sold_date_sk
+ group by d_week_seq,ss_store_sk
+ )
+  select  s_store_name1,s_store_id1,d_week_seq1
+       ,sun_sales1/sun_sales2,mon_sales1/mon_sales2
+       ,tue_sales1/tue_sales1,wed_sales1/wed_sales2,thu_sales1/thu_sales2
+       ,fri_sales1/fri_sales2,sat_sales1/sat_sales2
+ from
+ (select s_store_name s_store_name1,wss.d_week_seq d_week_seq1
+        ,s_store_id s_store_id1,sun_sales sun_sales1
+        ,mon_sales mon_sales1,tue_sales tue_sales1
+        ,wed_sales wed_sales1,thu_sales thu_sales1
+        ,fri_sales fri_sales1,sat_sales sat_sales1
+  from wss,store,date_dim d
+  where d.d_week_seq = wss.d_week_seq and
+        ss_store_sk = s_store_sk and 
+        d_month_seq between 1185 and 1185 + 11) y,
+ (select s_store_name s_store_name2,wss.d_week_seq d_week_seq2
+        ,s_store_id s_store_id2,sun_sales sun_sales2
+        ,mon_sales mon_sales2,tue_sales tue_sales2
+        ,wed_sales wed_sales2,thu_sales thu_sales2
+        ,fri_sales fri_sales2,sat_sales sat_sales2
+  from wss,store,date_dim d
+  where d.d_week_seq = wss.d_week_seq and
+        ss_store_sk = s_store_sk and 
+        d_month_seq between 1185+ 12 and 1185 + 23) x
+ where s_store_id1=s_store_id2
+   and d_week_seq1=d_week_seq2-52
+ order by s_store_name1,s_store_id1,d_week_seq1
+limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@store
+POSTHOOK: Input: default@store_sales
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE)
+Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+Reducer 8 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:100
+    Stage-1
+      Reducer 7 vectorized
+      File Output Operator [FS_207]
+        Limit [LIM_206] (rows=100 width=976)
+          Number of rows:100
+          Select Operator [SEL_205] (rows=1012347 width=976)
+            Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"]
+          <-Reducer 6 [SIMPLE_EDGE]
+            SHUFFLE [RS_57]
+              Select Operator [SEL_56] (rows=1012347 width=976)
+                Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"]
+                Merge Join Operator [MERGEJOIN_181] (rows=1012347 width=1648)
+                  Conds:RS_53._col11, _col0=RS_54._col0, _col7(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col12","_col14","_col15","_col16","_col17","_col18","_col19"]
+                <-Reducer 11 [SIMPLE_EDGE]
+                  SHUFFLE [RS_54]
+                    PartitionCols:_col0, _col7
+                    Select Operator [SEL_46] (rows=28847 width=776)
+                      Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+                      Merge Join Operator [MERGEJOIN_180] (rows=28847 width=776)
+                        Conds:RS_43._col1=RS_204._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col10"]
+                      <-Map 15 [SIMPLE_EDGE] vectorized
+                        SHUFFLE [RS_204]
+                          PartitionCols:_col0
+                          Select Operator [SEL_203] (rows=1704 width=104)
+                            Output:["_col0","_col1"]
+                            TableScan [TS_38] (rows=1704 width=104)
+                              default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id"]
+                      <-Reducer 10 [SIMPLE_EDGE]
+                        SHUFFLE [RS_43]
+                          PartitionCols:_col1
+                          Merge Join Operator [MERGEJOIN_179] (rows=28847 width=676)
+                            Conds:RS_202._col0=RS_198._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+                          <-Map 13 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_198]
+                              PartitionCols:_col0
+                              Select Operator [SEL_196] (rows=317 width=4)
+                                Output:["_col0"]
+                                Filter Operator [FIL_194] (rows=317 width=8)
+                                  predicate:(d_month_seq BETWEEN 1197 AND 1208 and d_week_seq is not null)
+                                  TableScan [TS_15] (rows=73049 width=8)
+                                    default@date_dim,d,Tbl:COMPLETE,Col:COMPLETE,Output:["d_month_seq","d_week_seq"]
+                          <-Reducer 9 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_202]
+                              PartitionCols:_col0
+                              Group By Operator [GBY_201] (rows=1196832 width=679)
+                                Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)"],keys:KEY._col0, KEY._col1
+                              <-Reducer 8 [SIMPLE_EDGE]
+                                SHUFFLE [RS_32]
+                                  PartitionCols:_col0, _col1
+                                  Group By Operator [GBY_31] (rows=525329897 width=679)
+                                    Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col2)","sum(_col3)","sum(_col5)","sum(_col6)","sum(_col7)","sum(_col8)"],keys:_col0, _col1
+                                    Select Operator [SEL_29] (rows=525329897 width=138)
+                                      Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7","_col8"]
+                                      Merge Join Operator [MERGEJOIN_178] (rows=525329897 width=138)
+                                        Conds:RS_185._col0=RS_190._col0(Inner),Output:["_col1","_col2","_col4","_col5","_col6","_col8","_col9","_col10","_col11"]
+                                      <-Map 1 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_185]
+                                          PartitionCols:_col0
+                                          Select Operator [SEL_183] (rows=525329897 width=114)
+                                            Output:["_col0","_col1","_col2"]
+                                            Filter Operator [FIL_182] (rows=525329897 width=114)
+                                              predicate:(ss_sold_date_sk is not null and ss_store_sk is not null)
+                                              TableScan [TS_0] (rows=575995635 width=114)
+                                                default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_store_sk","ss_sales_price"]
+                                      <-Map 12 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_190]
+                                          PartitionCols:_col0
+                                          Select Operator [SEL_188] (rows=73049 width=36)
+                                            Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7","_col8"]
+                                            Filter Operator [FIL_186] (rows=73049 width=99)
+                                              predicate:d_week_seq is not null
+                                              TableScan [TS_3] (rows=73049 width=99)
+                                                default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_week_seq","d_day_name"]
+                <-Reducer 5 [SIMPLE_EDGE]
+                  SHUFFLE [RS_53]
+                    PartitionCols:_col11, _col0
+                    Merge Join Operator [MERGEJOIN_177] (rows=28847 width=976)
+                      Conds:RS_50._col1=RS_200._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col12"]
+                    <-Map 14 [SIMPLE_EDGE] vectorized
+                      SHUFFLE [RS_200]
+                        PartitionCols:_col0
+                        Select Operator [SEL_199] (rows=1704 width=192)
+                          Output:["_col0","_col1","_col2"]
+                          TableScan [TS_18] (rows=1704 width=192)
+                            default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name"]
+                    <-Reducer 4 [SIMPLE_EDGE]
+                      SHUFFLE [RS_50]
+                        PartitionCols:_col1
+                        Merge Join Operator [MERGEJOIN_176] (rows=28847 width=788)
+                          Conds:RS_192._col0=RS_197._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"]
+                        <-Map 13 [SIMPLE_EDGE] vectorized
+                          SHUFFLE [RS_197]
+                            PartitionCols:_col0
+                            Select Operator [SEL_195] (rows=317 width=4)
+                              Output:["_col0"]
+                              Filter Operator [FIL_193] (rows=317 width=8)
+                                predicate:(d_month_seq BETWEEN 1185 AND 1196 and d_week_seq is not null)
+                                 Please refer to the previous TableScan [TS_15]
+                        <-Reducer 3 [SIMPLE_EDGE] vectorized
+                          SHUFFLE [RS_192]
+                            PartitionCols:_col0
+                            Group By Operator [GBY_191] (rows=1196832 width=791)
+                              Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)"],keys:KEY._col0, KEY._col1
+                            <-Reducer 2 [SIMPLE_EDGE]
+                              SHUFFLE [RS_12]
+                                PartitionCols:_col0, _col1
+                                Group By Operator [GBY_11] (rows=525329897 width=791)
+                                  Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)","sum(_col5)","sum(_col6)","sum(_col7)","sum(_col8)"],keys:_col0, _col1
+                                  Select Operator [SEL_9] (rows=525329897 width=142)
+                                    Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"]
+                                    Merge Join Operator [MERGEJOIN_175] (rows=525329897 width=142)
+                                      Conds:RS_184._col0=RS_189._col0(Inner),Output:["_col1","_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+                                    <-Map 1 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_184]
+                                        PartitionCols:_col0
+                                         Please refer to the previous Select Operator [SEL_183]
+                                    <-Map 12 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_189]
+                                        PartitionCols:_col0
+                                        Select Operator [SEL_187] (rows=73049 width=36)
+                                          Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"]
+                                           Please refer to the previous Filter Operator [FIL_186]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query6.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query6.q.out
new file mode 100644
index 0000000..85c962f
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query6.q.out
@@ -0,0 +1,236 @@
+Warning: Map Join MAPJOIN[172][bigTable=?] in task 'Reducer 15' is a cross product
+PREHOOK: query: explain
+select  a.ca_state state, count(*) cnt
+ from customer_address a
+     ,customer c
+     ,store_sales s
+     ,date_dim d
+     ,item i
+ where       a.ca_address_sk = c.c_current_addr_sk
+ 	and c.c_customer_sk = s.ss_customer_sk
+ 	and s.ss_sold_date_sk = d.d_date_sk
+ 	and s.ss_item_sk = i.i_item_sk
+ 	and d.d_month_seq = 
+ 	     (select distinct (d_month_seq)
+ 	      from date_dim
+               where d_year = 2000
+ 	        and d_moy = 2 )
+ 	and i.i_current_price > 1.2 * 
+             (select avg(j.i_current_price) 
+ 	     from item j 
+ 	     where j.i_category = i.i_category)
+ group by a.ca_state
+ having count(*) >= 10
+ order by cnt 
+ limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@customer
+PREHOOK: Input: default@customer_address
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@item
+PREHOOK: Input: default@store_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+select  a.ca_state state, count(*) cnt
+ from customer_address a
+     ,customer c
+     ,store_sales s
+     ,date_dim d
+     ,item i
+ where       a.ca_address_sk = c.c_current_addr_sk
+ 	and c.c_customer_sk = s.ss_customer_sk
+ 	and s.ss_sold_date_sk = d.d_date_sk
+ 	and s.ss_item_sk = i.i_item_sk
+ 	and d.d_month_seq = 
+ 	     (select distinct (d_month_seq)
+ 	      from date_dim
+               where d_year = 2000
+ 	        and d_moy = 2 )
+ 	and i.i_current_price > 1.2 * 
+             (select avg(j.i_current_price) 
+ 	     from item j 
+ 	     where j.i_category = i.i_category)
+ group by a.ca_state
+ having count(*) >= 10
+ order by cnt 
+ limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@customer
+POSTHOOK: Input: default@customer_address
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@item
+POSTHOOK: Input: default@store_sales
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Map 1 <- Reducer 3 (BROADCAST_EDGE)
+Map 16 <- Reducer 15 (BROADCAST_EDGE)
+Map 6 <- Map 1 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE)
+Reducer 10 <- Reducer 9 (SIMPLE_EDGE)
+Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE)
+Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE)
+Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Map 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 2 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE)
+Reducer 7 <- Map 6 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE)
+Reducer 8 <- Map 16 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:100
+    Stage-1
+      Reducer 10 vectorized
+      File Output Operator [FS_234]
+        Limit [LIM_233] (rows=1 width=94)
+          Number of rows:100
+          Select Operator [SEL_232] (rows=1 width=94)
+            Output:["_col0","_col1"]
+          <-Reducer 9 [SIMPLE_EDGE] vectorized
+            SHUFFLE [RS_231]
+              Filter Operator [FIL_230] (rows=1 width=94)
+                predicate:(_col1 >= 10L)
+                Group By Operator [GBY_229] (rows=1 width=94)
+                  Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0
+                <-Reducer 8 [SIMPLE_EDGE]
+                  SHUFFLE [RS_68]
+                    PartitionCols:_col0
+                    Group By Operator [GBY_67] (rows=1 width=94)
+                      Output:["_col0","_col1"],aggregations:["count()"],keys:_col9
+                      Merge Join Operator [MERGEJOIN_175] (rows=316 width=86)
+                        Conds:RS_63._col4=RS_214._col0(Inner),Output:["_col9"]
+                      <-Map 16 [SIMPLE_EDGE] vectorized
+                        SHUFFLE [RS_214]
+                          PartitionCols:_col0
+                          Select Operator [SEL_213] (rows=154000 width=227)
+                            Output:["_col0"]
+                            Filter Operator [FIL_212] (rows=154000 width=227)
+                              predicate:(_col4 > _col1)
+                              Map Join Operator [MAPJOIN_211] (rows=462000 width=227)
+                                Conds:RS_208._col0=SEL_210._col2(Inner),HybridGraceHashJoin:true,Output:["_col1","_col3","_col4"]
+                              <-Reducer 15 [BROADCAST_EDGE] vectorized
+                                BROADCAST [RS_208]
+                                  PartitionCols:_col0
+                                  Map Join Operator [MAPJOIN_207] (rows=10 width=202)
+                                    Conds:(Inner),Output:["_col0","_col1"]
+                                  <-Reducer 5 [BROADCAST_EDGE] vectorized
+                                    BROADCAST [RS_204]
+                                      Select Operator [SEL_203] (rows=1 width=8)
+                                        Filter Operator [FIL_202] (rows=1 width=8)
+                                          predicate:(sq_count_check(_col0) <= 1)
+                                          Group By Operator [GBY_201] (rows=1 width=8)
+                                            Output:["_col0"],aggregations:["count(VALUE._col0)"]
+                                          <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized
+                                            PARTITION_ONLY_SHUFFLE [RS_200]
+                                              Group By Operator [GBY_199] (rows=1 width=8)
+                                                Output:["_col0"],aggregations:["count()"]
+                                                Select Operator [SEL_198] (rows=25 width=4)
+                                                  Group By Operator [GBY_197] (rows=25 width=4)
+                                                    Output:["_col0"],keys:KEY._col0
+                                                  <-Map 2 [SIMPLE_EDGE] vectorized
+                                                    SHUFFLE [RS_187]
+                                                      PartitionCols:_col0
+                                                      Group By Operator [GBY_185] (rows=25 width=4)
+                                                        Output:["_col0"],keys:d_month_seq
+                                                        Select Operator [SEL_183] (rows=50 width=12)
+                                                          Output:["d_month_seq"]
+                                                          Filter Operator [FIL_181] (rows=50 width=12)
+                                                            predicate:((d_moy = 2) and (d_year = 2000))
+                                                            TableScan [TS_3] (rows=73049 width=12)
+                                                              default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_month_seq","d_year","d_moy"]
+                                  <-Select Operator [SEL_206] (rows=10 width=202)
+                                      Output:["_col0","_col1"]
+                                      Group By Operator [GBY_205] (rows=10 width=210)
+                                        Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0
+                                      <-Map 14 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_196]
+                                          PartitionCols:_col0
+                                          Group By Operator [GBY_195] (rows=10 width=210)
+                                            Output:["_col0","_col1","_col2"],aggregations:["sum(i_current_price)","count(i_current_price)"],keys:i_category
+                                            Filter Operator [FIL_194] (rows=462000 width=201)
+                                              predicate:i_category is not null
+                                              TableScan [TS_22] (rows=462000 width=201)
+                                                default@item,j,Tbl:COMPLETE,Col:COMPLETE,Output:["i_current_price","i_category"]
+                              <-Select Operator [SEL_210] (rows=462000 width=205)
+                                  Output:["_col0","_col1","_col2"]
+                                  Filter Operator [FIL_209] (rows=462000 width=205)
+                                    predicate:i_category is not null
+                                    TableScan [TS_43] (rows=462000 width=205)
+                                      default@item,i,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_category"]
+                      <-Reducer 7 [SIMPLE_EDGE]
+                        SHUFFLE [RS_63]
+                          PartitionCols:_col4
+                          Merge Join Operator [MERGEJOIN_174] (rows=7192227 width=90)
+                            Conds:RS_223._col5=RS_61._col0(Inner),Output:["_col4","_col9"]
+                          <-Map 6 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_223]
+                              PartitionCols:_col5
+                              Map Join Operator [MAPJOIN_222] (rows=7192227 width=4)
+                                Conds:RS_193._col0=SEL_221._col0(Inner),HybridGraceHashJoin:true,Output:["_col4","_col5"]
+                              <-Map 1 [BROADCAST_EDGE] vectorized
+                                BROADCAST [RS_193]
+                                  PartitionCols:_col0
+                                  Map Join Operator [MAPJOIN_192] (rows=660 width=4)
+                                    Conds:SEL_191._col1=RS_189._col0(Inner),HybridGraceHashJoin:true,Output:["_col0"]
+                                  <-Reducer 3 [BROADCAST_EDGE] vectorized
+                                    BROADCAST [RS_189]
+                                      PartitionCols:_col0
+                                      Group By Operator [GBY_188] (rows=25 width=4)
+                                        Output:["_col0"],keys:KEY._col0
+                                      <-Map 2 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_186]
+                                          PartitionCols:_col0
+                                          Group By Operator [GBY_184] (rows=25 width=4)
+                                            Output:["_col0"],keys:d_month_seq
+                                            Select Operator [SEL_182] (rows=50 width=12)
+                                              Output:["d_month_seq"]
+                                              Filter Operator [FIL_180] (rows=50 width=12)
+                                                predicate:((d_moy = 2) and (d_year = 2000) and d_month_seq is not null)
+                                                 Please refer to the previous TableScan [TS_3]
+                                  <-Select Operator [SEL_191] (rows=73049 width=8)
+                                      Output:["_col0","_col1"]
+                                      Filter Operator [FIL_190] (rows=73049 width=8)
+                                        predicate:d_month_seq is not null
+                                        TableScan [TS_0] (rows=73049 width=8)
+                                          default@date_dim,d,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"]
+                              <-Select Operator [SEL_221] (rows=525327388 width=11)
+                                  Output:["_col0","_col1","_col2"]
+                                  Filter Operator [FIL_220] (rows=525327388 width=11)
+                                    predicate:((ss_item_sk BETWEEN DynamicValue(RS_64_i_i_item_sk_min) AND DynamicValue(RS_64_i_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_64_i_i_item_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null)
+                                    TableScan [TS_10] (rows=575995635 width=11)
+                                      default@store_sales,s,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk"]
+                                    <-Reducer 17 [BROADCAST_EDGE] vectorized
+                                      BROADCAST [RS_219]
+                                        Group By Operator [GBY_218] (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
+                                          SHUFFLE [RS_217]
+                                            Group By Operator [GBY_216] (rows=1 width=12)
+                                              Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                              Select Operator [SEL_215] (rows=154000 width=4)
+                                                Output:["_col0"]
+                                                 Please refer to the previous Select Operator [SEL_213]
+                          <-Reducer 12 [SIMPLE_EDGE]
+                            SHUFFLE [RS_61]
+                              PartitionCols:_col0
+                              Merge Join Operator [MERGEJOIN_171] (rows=80000000 width=90)
+                                Conds:RS_226._col1=RS_228._col0(Inner),Output:["_col0","_col3"]
+                              <-Map 11 [SIMPLE_EDGE] vectorized
+                                SHUFFLE [RS_226]
+                                  PartitionCols:_col1
+                                  Select Operator [SEL_225] (rows=80000000 width=8)
+                                    Output:["_col0","_col1"]
+                                    Filter Operator [FIL_224] (rows=80000000 width=8)
+                                      predicate:c_current_addr_sk is not null
+                                      TableScan [TS_13] (rows=80000000 width=8)
+                                        default@customer,c,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk"]
+                              <-Map 13 [SIMPLE_EDGE] vectorized
+                                SHUFFLE [RS_228]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_227] (rows=40000000 width=90)
+                                    Output:["_col0","_col1"]
+                                    TableScan [TS_16] (rows=40000000 width=90)
+                                      default@customer_address,a,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out
new file mode 100644
index 0000000..cb94e4f
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out
@@ -0,0 +1,496 @@
+PREHOOK: query: explain
+with ss as (
+ select
+          i_item_id,sum(ss_ext_sales_price) total_sales
+ from
+ 	store_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     ss_item_sk              = i_item_sk
+ and     ss_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     ss_addr_sk              = ca_address_sk
+ and     ca_gmt_offset           = -6 
+ group by i_item_id),
+ cs as (
+ select
+          i_item_id,sum(cs_ext_sales_price) total_sales
+ from
+ 	catalog_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id               in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     cs_item_sk              = i_item_sk
+ and     cs_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     cs_bill_addr_sk         = ca_address_sk
+ and     ca_gmt_offset           = -6 
+ group by i_item_id),
+ ws as (
+ select
+          i_item_id,sum(ws_ext_sales_price) total_sales
+ from
+ 	web_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id               in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     ws_item_sk              = i_item_sk
+ and     ws_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     ws_bill_addr_sk         = ca_address_sk
+ and     ca_gmt_offset           = -6
+ group by i_item_id)
+  select   
+  i_item_id
+,sum(total_sales) total_sales
+ from  (select * from ss 
+        union all
+        select * from cs 
+        union all
+        select * from ws) tmp1
+ group by i_item_id
+ order by i_item_id
+      ,total_sales
+ limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@catalog_sales
+PREHOOK: Input: default@customer_address
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@item
+PREHOOK: Input: default@store_sales
+PREHOOK: Input: default@web_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+with ss as (
+ select
+          i_item_id,sum(ss_ext_sales_price) total_sales
+ from
+ 	store_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     ss_item_sk              = i_item_sk
+ and     ss_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     ss_addr_sk              = ca_address_sk
+ and     ca_gmt_offset           = -6 
+ group by i_item_id),
+ cs as (
+ select
+          i_item_id,sum(cs_ext_sales_price) total_sales
+ from
+ 	catalog_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id               in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     cs_item_sk              = i_item_sk
+ and     cs_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     cs_bill_addr_sk         = ca_address_sk
+ and     ca_gmt_offset           = -6 
+ group by i_item_id),
+ ws as (
+ select
+          i_item_id,sum(ws_ext_sales_price) total_sales
+ from
+ 	web_sales,
+ 	date_dim,
+         customer_address,
+         item
+ where
+         i_item_id               in (select
+  i_item_id
+from
+ item
+where i_category in ('Children'))
+ and     ws_item_sk              = i_item_sk
+ and     ws_sold_date_sk         = d_date_sk
+ and     d_year                  = 1999
+ and     d_moy                   = 9
+ and     ws_bill_addr_sk         = ca_address_sk
+ and     ca_gmt_offset           = -6
+ group by i_item_id)
+  select   
+  i_item_id
+,sum(total_sales) total_sales
+ from  (select * from ss 
+        union all
+        select * from cs 
+        union all
+        select * from ws) tmp1
+ group by i_item_id
+ order by i_item_id
+      ,total_sales
+ limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@catalog_sales
+POSTHOOK: Input: default@customer_address
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@item
+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 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE)
+Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE)
+Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE)
+Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE)
+Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 16 <- Map 15 (SIMPLE_EDGE)
+Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE)
+Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE)
+Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE)
+Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE)
+Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE)
+Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE)
+Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE)
+Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 6 <- Union 5 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:100
+    Stage-1
+      Reducer 7 vectorized
+      File Output Operator [FS_375]
+        Limit [LIM_374] (rows=100 width=212)
+          Number of rows:100
+          Select Operator [SEL_373] (rows=1717 width=212)
+            Output:["_col0","_col1"]
+          <-Reducer 6 [SIMPLE_EDGE] vectorized
+            SHUFFLE [RS_372]
+              Group By Operator [GBY_371] (rows=1717 width=212)
+                Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+              <-Union 5 [SIMPLE_EDGE]
+                <-Reducer 10 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_388]
+                    PartitionCols:_col0
+                    Group By Operator [GBY_387] (rows=1717 width=212)
+                      Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+                      Top N Key Operator [TNK_386] (rows=5151 width=212)
+                        keys:_col0,sort order:+,top n:100
+                        Group By Operator [GBY_385] (rows=1717 width=212)
+                          Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+                        <-Reducer 9 [SIMPLE_EDGE]
+                          SHUFFLE [RS_69]
+                            PartitionCols:_col0
+                            Group By Operator [GBY_68] (rows=1717 width=212)
+                              Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1
+                              Merge Join Operator [MERGEJOIN_305] (rows=746132 width=100)
+                                Conds:RS_64._col0=RS_65._col3(Inner),Output:["_col1","_col7"]
+                              <-Reducer 2 [SIMPLE_EDGE]
+                                SHUFFLE [RS_64]
+                                  PartitionCols:_col0
+                                  Merge Join Operator [MERGEJOIN_295] (rows=34340 width=104)
+                                    Conds:RS_323._col1=RS_329._col0(Inner),Output:["_col0","_col1"]
+                                  <-Map 1 [SIMPLE_EDGE] vectorized
+                                    SHUFFLE [RS_323]
+                                      PartitionCols:_col1
+                                      Select Operator [SEL_322] (rows=462000 width=104)
+                                        Output:["_col0","_col1"]
+                                        TableScan [TS_0] (rows=462000 width=104)
+                                          default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"]
+                                  <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized
+                                    FORWARD [RS_329]
+                                      PartitionCols:_col0
+                                      Group By Operator [GBY_328] (rows=23100 width=100)
+                                        Output:["_col0"],keys:KEY._col0
+                                      <-Map 15 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_327]
+                                          PartitionCols:_col0
+                                          Group By Operator [GBY_326] (rows=23100 width=100)
+                                            Output:["_col0"],keys:i_item_id
+                                            Select Operator [SEL_325] (rows=46200 width=190)
+                                              Output:["i_item_id"]
+                                              Filter Operator [FIL_324] (rows=46200 width=190)
+                                                predicate:(i_category = 'Children')
+                                                TableScan [TS_2] (rows=462000 width=190)
+                                                  default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_id","i_category"]
+                              <-Reducer 23 [SIMPLE_EDGE]
+                                SHUFFLE [RS_65]
+                                  PartitionCols:_col3
+                                  Select Operator [SEL_60] (rows=1550375 width=13)
+                                    Output:["_col3","_col4"]
+                                    Merge Join Operator [MERGEJOIN_300] (rows=1550375 width=13)
+                                      Conds:RS_57._col1=RS_350._col0(Inner),Output:["_col2","_col3"]
+                                    <-Map 28 [SIMPLE_EDGE] vectorized
+                                      PARTITION_ONLY_SHUFFLE [RS_350]
+                                        PartitionCols:_col0
+                                        Select Operator [SEL_347] (rows=8000000 width=4)
+                                          Output:["_col0"]
+                                          Filter Operator [FIL_346] (rows=8000000 width=112)
+                                            predicate:(ca_gmt_offset = -6)
+                                            TableScan [TS_15] (rows=40000000 width=112)
+                                              default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"]
+                                    <-Reducer 22 [SIMPLE_EDGE]
+                                      SHUFFLE [RS_57]
+                                        PartitionCols:_col1
+                                        Merge Join Operator [MERGEJOIN_299] (rows=7751872 width=98)
+                                          Conds:RS_384._col0=RS_334._col0(Inner),Output:["_col1","_col2","_col3"]
+                                        <-Map 20 [SIMPLE_EDGE] vectorized
+                                          PARTITION_ONLY_SHUFFLE [RS_334]
+                                            PartitionCols:_col0
+                                            Select Operator [SEL_331] (rows=50 width=4)
+                                              Output:["_col0"]
+                                              Filter Operator [FIL_330] (rows=50 width=12)
+                                                predicate:((d_moy = 9) and (d_year = 1999))
+                                                TableScan [TS_12] (rows=73049 width=12)
+                                                  default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"]
+                                        <-Map 32 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_384]
+                                            PartitionCols:_col0
+                                            Select Operator [SEL_383] (rows=285117733 width=123)
+                                              Output:["_col0","_col1","_col2","_col3"]
+                                              Filter Operator [FIL_382] (rows=285117733 width=123)
+                                                predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_58_customer_address_ca_address_sk_min) AND DynamicValue(RS_58_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_58_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null)
+                                                TableScan [TS_45] (rows=287989836 width=123)
+                                                  default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"]
+                                                <-Reducer 11 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_381]
+                                                    Group By Operator [GBY_380] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                    <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                      SHUFFLE [RS_240]
+                                                        Group By Operator [GBY_239] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_238] (rows=34340 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Merge Join Operator [MERGEJOIN_295]
+                                                <-Reducer 24 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_377]
+                                                    Group By Operator [GBY_376] (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_342]
+                                                        Group By Operator [GBY_339] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_335] (rows=50 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_331]
+                                                <-Reducer 30 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_379]
+                                                    Group By Operator [GBY_378] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"]
+                                                    <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                      PARTITION_ONLY_SHUFFLE [RS_358]
+                                                        Group By Operator [GBY_355] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"]
+                                                          Select Operator [SEL_351] (rows=8000000 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_347]
+                <-Reducer 13 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_401]
+                    PartitionCols:_col0
+                    Group By Operator [GBY_400] (rows=1717 width=212)
+                      Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+                      Top N Key Operator [TNK_399] (rows=5151 width=212)
+                        keys:_col0,sort order:+,top n:100
+                        Group By Operator [GBY_398] (rows=1717 width=212)
+                          Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+                        <-Reducer 12 [SIMPLE_EDGE]
+                          SHUFFLE [RS_106]
+                            PartitionCols:_col0
+                            Group By Operator [GBY_105] (rows=1717 width=212)
+                              Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1
+                              Merge Join Operator [MERGEJOIN_306] (rows=379339 width=201)
+                                Conds:RS_101._col0=RS_102._col2(Inner),Output:["_col1","_col7"]
+                              <-Reducer 2 [SIMPLE_EDGE]
+                                SHUFFLE [RS_101]
+                                  PartitionCols:_col0
+                                   Please refer to the previous Merge Join Operator [MERGEJOIN_295]
+                              <-Reducer 26 [SIMPLE_EDGE]
+                                SHUFFLE [RS_102]
+                                  PartitionCols:_col2
+                                  Select Operator [SEL_97] (rows=788222 width=110)
+                                    Output:["_col2","_col4"]
+                                    Merge Join Operator [MERGEJOIN_303] (rows=788222 width=110)
+                                      Conds:RS_94._col2=RS_352._col0(Inner),Output:["_col1","_col3"]
+                                    <-Map 28 [SIMPLE_EDGE] vectorized
+                                      PARTITION_ONLY_SHUFFLE [RS_352]
+                                        PartitionCols:_col0
+                                         Please refer to the previous Select Operator [SEL_347]
+                                    <-Reducer 25 [SIMPLE_EDGE]
+                                      SHUFFLE [RS_94]
+                                        PartitionCols:_col2
+                                        Merge Join Operator [MERGEJOIN_302] (rows=3941109 width=118)
+                                          Conds:RS_397._col0=RS_336._col0(Inner),Output:["_col1","_col2","_col3"]
+                                        <-Map 20 [SIMPLE_EDGE] vectorized
+                                          PARTITION_ONLY_SHUFFLE [RS_336]
+                                            PartitionCols:_col0
+                                             Please refer to the previous Select Operator [SEL_331]
+                                        <-Map 33 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_397]
+                                            PartitionCols:_col0
+                                            Select Operator [SEL_396] (rows=143931246 width=123)
+                                              Output:["_col0","_col1","_col2","_col3"]
+                                              Filter Operator [FIL_395] (rows=143931246 width=123)
+                                                predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_95_customer_address_ca_address_sk_min) AND DynamicValue(RS_95_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_95_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_101_item_i_item_sk_min) AND DynamicValue(RS_101_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_101_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_92_date_dim_d_date_sk_min) AND DynamicValue(RS_92_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_92_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null)
+                                                TableScan [TS_82] (rows=144002668 width=123)
+                                                  default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"]
+                                                <-Reducer 14 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_394]
+                                                    Group By Operator [GBY_393] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                    <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                      SHUFFLE [RS_286]
+                                                        Group By Operator [GBY_285] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_284] (rows=34340 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Merge Join Operator [MERGEJOIN_295]
+                                                <-Reducer 27 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_390]
+                                                    Group By Operator [GBY_389] (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_343]
+                                                        Group By Operator [GBY_340] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_337] (rows=50 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_331]
+                                                <-Reducer 31 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_392]
+                                                    Group By Operator [GBY_391] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"]
+                                                    <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                      PARTITION_ONLY_SHUFFLE [RS_359]
+                                                        Group By Operator [GBY_356] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"]
+                                                          Select Operator [SEL_353] (rows=8000000 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_347]
+                <-Reducer 4 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_370]
+                    PartitionCols:_col0
+                    Group By Operator [GBY_369] (rows=1717 width=212)
+                      Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+                      Top N Key Operator [TNK_368] (rows=5151 width=212)
+                        keys:_col0,sort order:+,top n:100
+                        Group By Operator [GBY_367] (rows=1717 width=212)
+                          Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+                        <-Reducer 3 [SIMPLE_EDGE]
+                          SHUFFLE [RS_33]
+                            PartitionCols:_col0
+                            Group By Operator [GBY_32] (rows=1717 width=212)
+                              Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1
+                              Merge Join Operator [MERGEJOIN_304] (rows=1384530 width=100)
+                                Conds:RS_28._col0=RS_29._col2(Inner),Output:["_col1","_col7"]
+                              <-Reducer 2 [SIMPLE_EDGE]
+                                SHUFFLE [RS_28]
+                                  PartitionCols:_col0
+                                   Please refer to the previous Merge Join Operator [MERGEJOIN_295]
+                              <-Reducer 19 [SIMPLE_EDGE]
+                                SHUFFLE [RS_29]
+                                  PartitionCols:_col2
+                                  Select Operator [SEL_24] (rows=2876890 width=4)
+                                    Output:["_col2","_col4"]
+                                    Merge Join Operator [MERGEJOIN_297] (rows=2876890 width=4)
+                                      Conds:RS_21._col2=RS_348._col0(Inner),Output:["_col1","_col3"]
+                                    <-Map 28 [SIMPLE_EDGE] vectorized
+                                      PARTITION_ONLY_SHUFFLE [RS_348]
+                                        PartitionCols:_col0
+                                         Please refer to the previous Select Operator [SEL_347]
+                                    <-Reducer 18 [SIMPLE_EDGE]
+                                      SHUFFLE [RS_21]
+                                        PartitionCols:_col2
+                                        Merge Join Operator [MERGEJOIN_296] (rows=14384447 width=4)
+                                          Conds:RS_366._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"]
+                                        <-Map 20 [SIMPLE_EDGE] vectorized
+                                          PARTITION_ONLY_SHUFFLE [RS_332]
+                                            PartitionCols:_col0
+                                             Please refer to the previous Select Operator [SEL_331]
+                                        <-Map 17 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_366]
+                                            PartitionCols:_col0
+                                            Select Operator [SEL_365] (rows=525327191 width=118)
+                                              Output:["_col0","_col1","_col2","_col3"]
+                                              Filter Operator [FIL_364] (rows=525327191 width=118)
+                                                predicate:((ss_addr_sk BETWEEN DynamicValue(RS_22_customer_address_ca_address_sk_min) AND DynamicValue(RS_22_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_22_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_28_item_i_item_sk_min) AND DynamicValue(RS_28_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_28_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null)
+                                                TableScan [TS_9] (rows=575995635 width=118)
+                                                  default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"]
+                                                <-Reducer 21 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_345]
+                                                    Group By Operator [GBY_344] (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_341]
+                                                        Group By Operator [GBY_338] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_333] (rows=50 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_331]
+                                                <-Reducer 29 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_361]
+                                                    Group By Operator [GBY_360] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"]
+                                                    <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                      PARTITION_ONLY_SHUFFLE [RS_357]
+                                                        Group By Operator [GBY_354] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"]
+                                                          Select Operator [SEL_349] (rows=8000000 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Select Operator [SEL_347]
+                                                <-Reducer 8 [BROADCAST_EDGE] vectorized
+                                                  BROADCAST [RS_363]
+                                                    Group By Operator [GBY_362] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                    <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                      SHUFFLE [RS_204]
+                                                        Group By Operator [GBY_203] (rows=1 width=12)
+                                                          Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                          Select Operator [SEL_202] (rows=34340 width=4)
+                                                            Output:["_col0"]
+                                                             Please refer to the previous Merge Join Operator [MERGEJOIN_295]
+