http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out 
b/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out
new file mode 100644
index 0000000..658ae27
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out
@@ -0,0 +1,427 @@
+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
+       ,c_preferred_cust_flag
+       ,c_birth_country customer_birth_country
+       ,c_login customer_login
+       ,c_email_address customer_email_address
+       ,d_year dyear
+       ,sum(ss_ext_list_price-ss_ext_discount_amt) 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
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+         ,c_preferred_cust_flag
+         ,c_birth_country
+         ,c_login
+         ,c_email_address
+         ,d_year 
+ union all
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,c_preferred_cust_flag
+       ,c_birth_country customer_birth_country
+       ,c_login customer_login
+       ,c_email_address customer_email_address
+       ,d_year dyear
+       ,sum(ws_ext_list_price-ws_ext_discount_amt) 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
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,c_preferred_cust_flag
+         ,c_birth_country
+         ,c_login
+         ,c_email_address
+         ,d_year
+         )
+  select  t_s_secyear.c_preferred_cust_flag
+ 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.dyear = 2001
+         and t_s_secyear.dyear = 2001+1
+         and t_w_firstyear.dyear = 2001
+         and t_w_secyear.dyear = 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 t_s_secyear.c_preferred_cust_flag
+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
+       ,c_preferred_cust_flag
+       ,c_birth_country customer_birth_country
+       ,c_login customer_login
+       ,c_email_address customer_email_address
+       ,d_year dyear
+       ,sum(ss_ext_list_price-ss_ext_discount_amt) 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
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,d_year
+         ,c_preferred_cust_flag
+         ,c_birth_country
+         ,c_login
+         ,c_email_address
+         ,d_year 
+ union all
+ select c_customer_id customer_id
+       ,c_first_name customer_first_name
+       ,c_last_name customer_last_name
+       ,c_preferred_cust_flag
+       ,c_birth_country customer_birth_country
+       ,c_login customer_login
+       ,c_email_address customer_email_address
+       ,d_year dyear
+       ,sum(ws_ext_list_price-ws_ext_discount_amt) 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
+ group by c_customer_id
+         ,c_first_name
+         ,c_last_name
+         ,c_preferred_cust_flag
+         ,c_birth_country
+         ,c_login
+         ,c_email_address
+         ,d_year
+         )
+  select  t_s_secyear.c_preferred_cust_flag
+ 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.dyear = 2001
+         and t_s_secyear.dyear = 2001+1
+         and t_w_firstyear.dyear = 2001
+         and t_w_secyear.dyear = 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 t_s_secyear.c_preferred_cust_flag
+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_349]
+        Limit [LIM_348] (rows=100 width=85)
+          Number of rows:100
+          Select Operator [SEL_347] (rows=12248093 width=85)
+            Output:["_col0"]
+          <-Reducer 7 [SIMPLE_EDGE]
+            SHUFFLE [RS_89]
+              Select Operator [SEL_88] (rows=12248093 width=85)
+                Output:["_col0"]
+                Filter Operator [FIL_87] (rows=12248093 width=541)
+                  predicate:CASE WHEN (_col4) THEN (CASE WHEN (_col7) THEN 
(((_col1 / _col6) > (_col10 / _col3))) ELSE ((null > (_col10 / _col3))) END) 
ELSE (CASE WHEN (_col7) THEN (((_col1 / _col6) > null)) ELSE (null) END) END
+                  Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=541)
+                    
Conds:RS_84._col2=RS_346._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col9","_col10"]
+                  <-Reducer 20 [SIMPLE_EDGE] vectorized
+                    SHUFFLE [RS_346]
+                      PartitionCols:_col0
+                      Select Operator [SEL_345] (rows=80000000 width=297)
+                        Output:["_col0","_col1","_col2"]
+                        Group By Operator [GBY_344] (rows=80000000 width=764)
+                          
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6
+                        <-Reducer 19 [SIMPLE_EDGE]
+                          SHUFFLE [RS_75]
+                            PartitionCols:_col0, _col1, _col2, _col3, _col4, 
_col5, _col6
+                            Group By Operator [GBY_74] (rows=80000000 
width=764)
+                              
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col2)"],keys:_col5,
 _col6, _col7, _col8, _col9, _col10, _col11
+                              Merge Join Operator [MERGEJOIN_280] 
(rows=187573258 width=764)
+                                
Conds:RS_70._col1=RS_312._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+                              <-Map 26 [SIMPLE_EDGE] vectorized
+                                SHUFFLE [RS_312]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_311] (rows=80000000 
width=656)
+                                    
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+                                    TableScan [TS_65] (rows=80000000 width=656)
+                                      
default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_customer_id","c_first_name","c_last_name","c_preferred_cust_flag","c_birth_country","c_login","c_email_address"]
+                              <-Reducer 18 [SIMPLE_EDGE]
+                                SHUFFLE [RS_70]
+                                  PartitionCols:_col1
+                                  Merge Join Operator [MERGEJOIN_279] 
(rows=187573258 width=115)
+                                    
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)
+                                          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=119)
+                                        Output:["_col0","_col1","_col2"]
+                                        Filter Operator [FIL_341] 
(rows=525327388 width=221)
+                                          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=221)
+                                            
default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_ext_discount_amt","ss_ext_list_price"]
+                                          <-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:(_col7 > 0)
+                              Select Operator [SEL_335] (rows=51391963 
width=212)
+                                Output:["_col0","_col7"]
+                                Group By Operator [GBY_334] (rows=51391963 
width=764)
+                                  
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6
+                                <-Reducer 15 [SIMPLE_EDGE]
+                                  SHUFFLE [RS_55]
+                                    PartitionCols:_col0, _col1, _col2, _col3, 
_col4, _col5, _col6
+                                    Group By Operator [GBY_54] (rows=51391963 
width=764)
+                                      
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col2)"],keys:_col5,
 _col6, _col7, _col8, _col9, _col10, _col11
+                                      Merge Join Operator [MERGEJOIN_278] 
(rows=51391963 width=764)
+                                        
Conds:RS_50._col1=RS_315._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+                                      <-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)
+                                                   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=231)
+                                                  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=231)
+                                                    
default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk","ws_ext_discount_amt","ws_ext_list_price"]
+                                                  <-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:(_col7 > 0)
+                                  Select Operator [SEL_325] (rows=80000000 
width=212)
+                                    Output:["_col0","_col7"]
+                                    Group By Operator [GBY_324] (rows=80000000 
width=764)
+                                      
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6
+                                    <-Reducer 11 [SIMPLE_EDGE]
+                                      SHUFFLE [RS_35]
+                                        PartitionCols:_col0, _col1, _col2, 
_col3, _col4, _col5, _col6
+                                        Group By Operator [GBY_34] 
(rows=80000000 width=764)
+                                          
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col2)"],keys:_col5,
 _col6, _col7, _col8, _col9, _col10, _col11
+                                          Merge Join Operator [MERGEJOIN_276] 
(rows=187573258 width=764)
+                                            
Conds:RS_30._col1=RS_314._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+                                          <-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=115)
+                                                
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)
+                                                       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=119)
+                                                    
Output:["_col0","_col1","_col2"]
+                                                    Filter Operator [FIL_321] 
(rows=525327388 width=221)
+                                                      
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=221)
+                                                        
default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_ext_discount_amt","ss_ext_list_price"]
+                                                      <-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=764)
+                                  
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6
+                                <-Reducer 3 [SIMPLE_EDGE]
+                                  SHUFFLE [RS_16]
+                                    PartitionCols:_col0, _col1, _col2, _col3, 
_col4, _col5, _col6
+                                    Group By Operator [GBY_15] (rows=51391963 
width=764)
+                                      
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col2)"],keys:_col5,
 _col6, _col7, _col8, _col9, _col10, _col11
+                                      Merge Join Operator [MERGEJOIN_274] 
(rows=51391963 width=764)
+                                        
Conds:RS_11._col1=RS_313._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11"]
+                                      <-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=231)
+                                                  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=231)
+                                                    
default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk","ws_ext_discount_amt","ws_ext_list_price"]
+                                                  <-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]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out 
b/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out
new file mode 100644
index 0000000..741bd90
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out
@@ -0,0 +1,169 @@
+PREHOOK: query: explain
+select  i_item_desc 
+      ,i_category 
+      ,i_class 
+      ,i_current_price
+      ,sum(ws_ext_sales_price) as itemrevenue 
+      ,sum(ws_ext_sales_price)*100/sum(sum(ws_ext_sales_price)) over
+          (partition by i_class) as revenueratio
+from   
+       web_sales
+       ,item 
+       ,date_dim
+where 
+       ws_item_sk = i_item_sk 
+       and i_category in ('Jewelry', 'Sports', 'Books')
+       and ws_sold_date_sk = d_date_sk
+       and d_date between cast('2001-01-12' as date) 
+                               and (cast('2001-01-12' as date) + 30 days)
+group by 
+       i_item_id
+        ,i_item_desc 
+        ,i_category
+        ,i_class
+        ,i_current_price
+order by 
+       i_category
+        ,i_class
+        ,i_item_id
+        ,i_item_desc
+        ,revenueratio
+limit 100
+PREHOOK: type: QUERY
+PREHOOK: Input: default@date_dim
+PREHOOK: Input: default@item
+PREHOOK: Input: default@web_sales
+PREHOOK: Output: hdfs://### HDFS PATH ###
+POSTHOOK: query: explain
+select  i_item_desc 
+      ,i_category 
+      ,i_class 
+      ,i_current_price
+      ,sum(ws_ext_sales_price) as itemrevenue 
+      ,sum(ws_ext_sales_price)*100/sum(sum(ws_ext_sales_price)) over
+          (partition by i_class) as revenueratio
+from   
+       web_sales
+       ,item 
+       ,date_dim
+where 
+       ws_item_sk = i_item_sk 
+       and i_category in ('Jewelry', 'Sports', 'Books')
+       and ws_sold_date_sk = d_date_sk
+       and d_date between cast('2001-01-12' as date) 
+                               and (cast('2001-01-12' as date) + 30 days)
+group by 
+       i_item_id
+        ,i_item_desc 
+        ,i_category
+        ,i_class
+        ,i_current_price
+order by 
+       i_category
+        ,i_class
+        ,i_item_id
+        ,i_item_desc
+        ,revenueratio
+limit 100
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@date_dim
+POSTHOOK: Input: default@item
+POSTHOOK: Input: default@web_sales
+POSTHOOK: Output: hdfs://### HDFS PATH ###
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE)
+Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
+Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:-1
+    Stage-1
+      Reducer 6 vectorized
+      File Output Operator [FS_86]
+        Limit [LIM_85] (rows=100 width=802)
+          Number of rows:100
+          Select Operator [SEL_84] (rows=138600 width=801)
+            Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+          <-Reducer 5 [SIMPLE_EDGE] vectorized
+            SHUFFLE [RS_83]
+              Select Operator [SEL_82] (rows=138600 width=801)
+                
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+                PTF Operator [PTF_81] (rows=138600 width=689)
+                  Function 
definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS 
FIRST","partition by:":"_col1"}]
+                  Select Operator [SEL_80] (rows=138600 width=689)
+                    Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+                  <-Reducer 4 [SIMPLE_EDGE] vectorized
+                    SHUFFLE [RS_79]
+                      PartitionCols:_col1
+                      Group By Operator [GBY_78] (rows=138600 width=689)
+                        
Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2, KEY._col3, KEY._col4
+                      <-Reducer 3 [SIMPLE_EDGE]
+                        SHUFFLE [RS_17]
+                          PartitionCols:_col0, _col1, _col2, _col3, _col4
+                          Group By Operator [GBY_16] (rows=138600 width=689)
+                            
Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col9,
 _col8, _col5, _col6, _col7
+                            Merge Join Operator [MERGEJOIN_58] (rows=4798568 
width=689)
+                              
Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"]
+                            <-Map 9 [SIMPLE_EDGE] vectorized
+                              SHUFFLE [RS_69]
+                                PartitionCols:_col0
+                                Select Operator [SEL_68] (rows=138600 
width=581)
+                                  
Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+                                  Filter Operator [FIL_67] (rows=138600 
width=581)
+                                    predicate:(i_category) IN ('Jewelry', 
'Sports', 'Books')
+                                    TableScan [TS_6] (rows=462000 width=581)
+                                      
default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"]
+                            <-Reducer 2 [SIMPLE_EDGE]
+                              SHUFFLE [RS_12]
+                                PartitionCols:_col1
+                                Merge Join Operator [MERGEJOIN_57] 
(rows=15995224 width=115)
+                                  
Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"]
+                                <-Map 7 [SIMPLE_EDGE] vectorized
+                                  PARTITION_ONLY_SHUFFLE [RS_61]
+                                    PartitionCols:_col0
+                                    Select Operator [SEL_60] (rows=8116 
width=4)
+                                      Output:["_col0"]
+                                      Filter Operator [FIL_59] (rows=8116 
width=98)
+                                        predicate:CAST( d_date AS TIMESTAMP) 
BETWEEN TIMESTAMP'2001-01-12 00:00:00' AND TIMESTAMP'2001-02-11 00:00:00'
+                                        TableScan [TS_3] (rows=73049 width=98)
+                                          
default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"]
+                                <-Map 1 [SIMPLE_EDGE] vectorized
+                                  SHUFFLE [RS_77]
+                                    PartitionCols:_col0
+                                    Select Operator [SEL_76] (rows=143966864 
width=119)
+                                      Output:["_col0","_col1","_col2"]
+                                      Filter Operator [FIL_75] (rows=143966864 
width=119)
+                                        predicate:((ws_item_sk BETWEEN 
DynamicValue(RS_13_item_i_item_sk_min) AND 
DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, 
DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN 
DynamicValue(RS_10_date_dim_d_date_sk_min) AND 
DynamicValue(RS_10_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, 
DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) 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_item_sk","ws_ext_sales_price"]
+                                        <-Reducer 10 [BROADCAST_EDGE] 
vectorized
+                                          BROADCAST [RS_74]
+                                            Group By Operator [GBY_73] (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_72]
+                                                Group By Operator [GBY_71] 
(rows=1 width=12)
+                                                  
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                  Select Operator [SEL_70] 
(rows=138600 width=4)
+                                                    Output:["_col0"]
+                                                     Please refer to the 
previous Select Operator [SEL_68]
+                                        <-Reducer 8 [BROADCAST_EDGE] vectorized
+                                          BROADCAST [RS_66]
+                                            Group By Operator [GBY_65] (rows=1 
width=12)
+                                              
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                            <-Map 7 [CUSTOM_SIMPLE_EDGE] 
vectorized
+                                              PARTITION_ONLY_SHUFFLE [RS_64]
+                                                Group By Operator [GBY_63] 
(rows=1 width=12)
+                                                  
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                  Select Operator [SEL_62] 
(rows=8116 width=4)
+                                                    Output:["_col0"]
+                                                     Please refer to the 
previous Select Operator [SEL_60]
+

http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out 
b/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out
new file mode 100644
index 0000000..02966e4
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out
@@ -0,0 +1,255 @@
+PREHOOK: query: explain
+select avg(ss_quantity)
+       ,avg(ss_ext_sales_price)
+       ,avg(ss_ext_wholesale_cost)
+       ,sum(ss_ext_wholesale_cost)
+ from store_sales
+     ,store
+     ,customer_demographics
+     ,household_demographics
+     ,customer_address
+     ,date_dim
+ where s_store_sk = ss_store_sk
+ and  ss_sold_date_sk = d_date_sk and d_year = 2001
+ and((ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'M'
+  and cd_education_status = '4 yr Degree'
+  and ss_sales_price between 100.00 and 150.00
+  and hd_dep_count = 3   
+     )or
+     (ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'D'
+  and cd_education_status = 'Primary'
+  and ss_sales_price between 50.00 and 100.00   
+  and hd_dep_count = 1
+     ) or 
+     (ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'U'
+  and cd_education_status = 'Advanced Degree'
+  and ss_sales_price between 150.00 and 200.00 
+  and hd_dep_count = 1  
+     ))
+ and((ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('KY', 'GA', 'NM')
+  and ss_net_profit between 100 and 200  
+     ) or
+     (ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('MT', 'OR', 'IN')
+  and ss_net_profit between 150 and 300  
+     ) or
+     (ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('WI', 'MO', 'WV')
+  and ss_net_profit between 50 and 250  
+     ))
+PREHOOK: type: QUERY
+PREHOOK: Input: default@customer_address
+PREHOOK: Input: default@customer_demographics
+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 avg(ss_quantity)
+       ,avg(ss_ext_sales_price)
+       ,avg(ss_ext_wholesale_cost)
+       ,sum(ss_ext_wholesale_cost)
+ from store_sales
+     ,store
+     ,customer_demographics
+     ,household_demographics
+     ,customer_address
+     ,date_dim
+ where s_store_sk = ss_store_sk
+ and  ss_sold_date_sk = d_date_sk and d_year = 2001
+ and((ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'M'
+  and cd_education_status = '4 yr Degree'
+  and ss_sales_price between 100.00 and 150.00
+  and hd_dep_count = 3   
+     )or
+     (ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'D'
+  and cd_education_status = 'Primary'
+  and ss_sales_price between 50.00 and 100.00   
+  and hd_dep_count = 1
+     ) or 
+     (ss_hdemo_sk=hd_demo_sk
+  and cd_demo_sk = ss_cdemo_sk
+  and cd_marital_status = 'U'
+  and cd_education_status = 'Advanced Degree'
+  and ss_sales_price between 150.00 and 200.00 
+  and hd_dep_count = 1  
+     ))
+ and((ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('KY', 'GA', 'NM')
+  and ss_net_profit between 100 and 200  
+     ) or
+     (ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('MT', 'OR', 'IN')
+  and ss_net_profit between 150 and 300  
+     ) or
+     (ss_addr_sk = ca_address_sk
+  and ca_country = 'United States'
+  and ca_state in ('WI', 'MO', 'WV')
+  and ss_net_profit between 50 and 250  
+     ))
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@customer_address
+POSTHOOK: Input: default@customer_demographics
+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 8 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 
(BROADCAST_EDGE), Reducer 7 (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), Map 8 (SIMPLE_EDGE)
+Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE)
+Reducer 7 <- Map 1 (CUSTOM_SIMPLE_EDGE)
+
+Stage-0
+  Fetch Operator
+    limit:-1
+    Stage-1
+      Reducer 6 vectorized
+      File Output Operator [FS_135]
+        Select Operator [SEL_134] (rows=1 width=344)
+          Output:["_col0","_col1","_col2","_col3"]
+          Group By Operator [GBY_133] (rows=1 width=256)
+            
Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)"]
+          <-Reducer 5 [CUSTOM_SIMPLE_EDGE]
+            PARTITION_ONLY_SHUFFLE [RS_31]
+              Group By Operator [GBY_30] (rows=1 width=256)
+                
Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col5)","count(_col5)","sum(_col6)","count(_col6)","sum(_col7)","count(_col7)"]
+                Select Operator [SEL_29] (rows=40950 width=44)
+                  Output:["_col5","_col6","_col7"]
+                  Filter Operator [FIL_28] (rows=40950 width=44)
+                    predicate:((_col22 and _col23 and _col11 and _col15) or 
(_col24 and _col25 and _col12 and _col16) or (_col26 and _col27 and _col13 and 
_col16))
+                    Merge Join Operator [MERGEJOIN_97] (rows=218403 width=44)
+                      
Conds:RS_25._col2=RS_124._col0(Inner),Output:["_col5","_col6","_col7","_col11","_col12","_col13","_col15","_col16","_col22","_col23","_col24","_col25","_col26","_col27"]
+                    <-Map 13 [SIMPLE_EDGE] vectorized
+                      SHUFFLE [RS_124]
+                        PartitionCols:_col0
+                        Select Operator [SEL_123] (rows=265971 width=28)
+                          
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+                          Filter Operator [FIL_122] (rows=265971 width=183)
+                            predicate:((cd_education_status) IN ('4 yr 
Degree', 'Primary', 'Advanced Degree') and (cd_marital_status) IN ('M', 'D', 
'U'))
+                            TableScan [TS_12] (rows=1861800 width=183)
+                              
default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"]
+                    <-Reducer 4 [SIMPLE_EDGE]
+                      SHUFFLE [RS_25]
+                        PartitionCols:_col2
+                        Filter Operator [FIL_24] (rows=218403 width=44)
+                          predicate:((_col18 and _col8) or (_col19 and _col9) 
or (_col20 and _col10))
+                          Merge Join Operator [MERGEJOIN_96] (rows=291204 
width=44)
+                            
Conds:RS_21._col4=RS_116._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16","_col18","_col19","_col20"]
+                          <-Map 11 [SIMPLE_EDGE] vectorized
+                            SHUFFLE [RS_116]
+                              PartitionCols:_col0
+                              Select Operator [SEL_115] (rows=3529412 width=16)
+                                Output:["_col0","_col1","_col2","_col3"]
+                                Filter Operator [FIL_114] (rows=3529412 
width=187)
+                                  predicate:((ca_country = 'United States') 
and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV'))
+                                  TableScan [TS_9] (rows=40000000 width=187)
+                                    
default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_country"]
+                          <-Reducer 3 [SIMPLE_EDGE]
+                            SHUFFLE [RS_21]
+                              PartitionCols:_col4
+                              Merge Join Operator [MERGEJOIN_95] (rows=3300311 
width=104)
+                                
Conds:RS_18._col3=RS_108._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16"]
+                              <-Map 9 [SIMPLE_EDGE] vectorized
+                                SHUFFLE [RS_108]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_107] (rows=1309 
width=12)
+                                    Output:["_col0","_col1","_col2"]
+                                    Filter Operator [FIL_106] (rows=1309 
width=8)
+                                      predicate:(hd_dep_count) IN (3, 1)
+                                      TableScan [TS_6] (rows=7200 width=8)
+                                        
default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"]
+                              <-Reducer 2 [SIMPLE_EDGE]
+                                SHUFFLE [RS_18]
+                                  PartitionCols:_col3
+                                  Merge Join Operator [MERGEJOIN_94] 
(rows=18152968 width=233)
+                                    
Conds:RS_100._col0=RS_132._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"]
+                                  <-Map 1 [SIMPLE_EDGE] vectorized
+                                    PARTITION_ONLY_SHUFFLE [RS_100]
+                                      PartitionCols:_col0
+                                      Select Operator [SEL_99] (rows=652 
width=4)
+                                        Output:["_col0"]
+                                        Filter Operator [FIL_98] (rows=652 
width=8)
+                                          predicate:(d_year = 2001)
+                                          TableScan [TS_0] (rows=73049 width=8)
+                                            
default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"]
+                                  <-Map 8 [SIMPLE_EDGE] vectorized
+                                    SHUFFLE [RS_132]
+                                      PartitionCols:_col0
+                                      Select Operator [SEL_131] (rows=50840141 
width=257)
+                                        
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"]
+                                        Filter Operator [FIL_130] 
(rows=50840141 width=450)
+                                          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_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(ss_cdemo_sk, 
DynamicValue(RS_26_customer_demographics_cd_demo_sk_bloom_filter))) and 
(ss_hdemo_sk BETWEEN DynamicValue(RS_19_household_demographics_hd_demo_sk_min) 
AND DynamicValue(RS_19_household_demographics_hd_demo_sk_max) and 
in_bloom_filter(ss_hdemo_sk, 
DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and 
(ss_net_profit BETWEEN 100 AND 200 or ss_net_profit BETWEEN 150 AND 300 or 
ss_net_profit BETWEEN 50 AND 250) and (ss_sales_price BETWEEN 100 AND 150 or 
ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 A
 ND 200) 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_addr_sk is not 
null and ss_cdemo_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_3] (rows=575995635 
width=450)
+                                            
default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_quantity","ss_sales_price","ss_ext_sales_price","ss_ext_wholesale_cost","ss_net_profit"]
+                                          <-Reducer 10 [BROADCAST_EDGE] 
vectorized
+                                            BROADCAST [RS_113]
+                                              Group By Operator [GBY_112] 
(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_111]
+                                                  Group By Operator [GBY_110] 
(rows=1 width=12)
+                                                    
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                    Select Operator [SEL_109] 
(rows=1309 width=4)
+                                                      Output:["_col0"]
+                                                       Please refer to the 
previous Select Operator [SEL_107]
+                                          <-Reducer 12 [BROADCAST_EDGE] 
vectorized
+                                            BROADCAST [RS_121]
+                                              Group By Operator [GBY_120] 
(rows=1 width=12)
+                                                
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=3529412)"]
+                                              <-Map 11 [CUSTOM_SIMPLE_EDGE] 
vectorized
+                                                SHUFFLE [RS_119]
+                                                  Group By Operator [GBY_118] 
(rows=1 width=12)
+                                                    
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=3529412)"]
+                                                    Select Operator [SEL_117] 
(rows=3529412 width=4)
+                                                      Output:["_col0"]
+                                                       Please refer to the 
previous Select Operator [SEL_115]
+                                          <-Reducer 14 [BROADCAST_EDGE] 
vectorized
+                                            BROADCAST [RS_129]
+                                              Group By Operator [GBY_128] 
(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_127]
+                                                  Group By Operator [GBY_126] 
(rows=1 width=12)
+                                                    
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                    Select Operator [SEL_125] 
(rows=265971 width=4)
+                                                      Output:["_col0"]
+                                                       Please refer to the 
previous Select Operator [SEL_123]
+                                          <-Reducer 7 [BROADCAST_EDGE] 
vectorized
+                                            BROADCAST [RS_105]
+                                              Group By Operator [GBY_104] 
(rows=1 width=12)
+                                                
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                              <-Map 1 [CUSTOM_SIMPLE_EDGE] 
vectorized
+                                                PARTITION_ONLY_SHUFFLE [RS_103]
+                                                  Group By Operator [GBY_102] 
(rows=1 width=12)
+                                                    
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                    Select Operator [SEL_101] 
(rows=652 width=4)
+                                                      Output:["_col0"]
+                                                       Please refer to the 
previous Select Operator [SEL_99]
+

Reply via email to