http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query36.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query36.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query36.q.out
index cea3558..53c53db 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query36.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query36.q.out
@@ -59,37 +59,41 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
+Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 9 
(BROADCAST_EDGE)
+Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE)
+Reducer 13 <- Map 12 (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 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
 Reducer 5 <- Reducer 4 (SIMPLE_EDGE)
 Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
 Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
       Reducer 7 vectorized
-      File Output Operator [FS_74]
-        Limit [LIM_73] (rows=100 width=88)
+      File Output Operator [FS_119]
+        Limit [LIM_118] (rows=100 width=88)
           Number of rows:100
-          Select Operator [SEL_72] (rows=1149975358 width=88)
+          Select Operator [SEL_117] (rows=1149975358 width=88)
             Output:["_col0","_col1","_col2","_col3","_col4"]
           <-Reducer 6 [SIMPLE_EDGE] vectorized
-            SHUFFLE [RS_71]
-              Select Operator [SEL_70] (rows=1149975358 width=88)
+            SHUFFLE [RS_116]
+              Select Operator [SEL_115] (rows=1149975358 width=88)
                 Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
-                PTF Operator [PTF_69] (rows=1149975358 width=88)
+                PTF Operator [PTF_114] (rows=1149975358 width=88)
                   Function 
definitions:[{},{"name:":"windowingtablefunction","order by:":"(_col2 / _col3) 
ASC NULLS FIRST","partition by:":"(grouping(_col4, 1) + grouping(_col4, 0)), 
CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (UDFToString(null)) 
END"}]
-                  Select Operator [SEL_68] (rows=1149975358 width=88)
+                  Select Operator [SEL_113] (rows=1149975358 width=88)
                     Output:["_col0","_col1","_col2","_col3","_col4"]
                   <-Reducer 5 [SIMPLE_EDGE] vectorized
-                    SHUFFLE [RS_67]
+                    SHUFFLE [RS_112]
                       PartitionCols:(grouping(_col4, 1) + grouping(_col4, 0)), 
CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (UDFToString(null)) END
-                      Select Operator [SEL_66] (rows=1149975358 width=88)
+                      Select Operator [SEL_111] (rows=1149975358 width=88)
                         Output:["_col0","_col1","_col2","_col3","_col4"]
-                        Group By Operator [GBY_65] (rows=1149975358 width=88)
+                        Group By Operator [GBY_110] (rows=1149975358 width=88)
                           
Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0,
 KEY._col1, KEY._col2
                         <-Reducer 4 [SIMPLE_EDGE]
                           SHUFFLE [RS_24]
@@ -98,52 +102,85 @@ Stage-0
                               
Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col2)","sum(_col3)"],keys:_col0,
 _col1, 0L
                               Select Operator [SEL_21] (rows=766650239 
width=88)
                                 Output:["_col0","_col1","_col2","_col3"]
-                                Merge Join Operator [MERGEJOIN_52] 
(rows=766650239 width=88)
-                                  
Conds:RS_18._col1=RS_64._col0(Inner),Output:["_col3","_col4","_col10","_col11"]
-                                <-Map 10 [SIMPLE_EDGE] vectorized
-                                  SHUFFLE [RS_64]
+                                Merge Join Operator [MERGEJOIN_82] 
(rows=766650239 width=88)
+                                  
Conds:RS_18._col1=RS_101._col0(Inner),Output:["_col3","_col4","_col10","_col11"]
+                                <-Map 12 [SIMPLE_EDGE] vectorized
+                                  SHUFFLE [RS_101]
                                     PartitionCols:_col0
-                                    Select Operator [SEL_63] (rows=462000 
width=1436)
+                                    Select Operator [SEL_100] (rows=462000 
width=1436)
                                       Output:["_col0","_col1","_col2"]
-                                      Filter Operator [FIL_62] (rows=462000 
width=1436)
+                                      Filter Operator [FIL_99] (rows=462000 
width=1436)
                                         predicate:i_item_sk is not null
                                         TableScan [TS_9] (rows=462000 
width=1436)
                                           
default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_class","i_category"]
                                 <-Reducer 3 [SIMPLE_EDGE]
                                   SHUFFLE [RS_18]
                                     PartitionCols:_col1
-                                    Merge Join Operator [MERGEJOIN_51] 
(rows=696954748 width=88)
-                                      
Conds:RS_15._col2=RS_61._col0(Inner),Output:["_col1","_col3","_col4"]
-                                    <-Map 9 [SIMPLE_EDGE] vectorized
-                                      SHUFFLE [RS_61]
+                                    Merge Join Operator [MERGEJOIN_81] 
(rows=696954748 width=88)
+                                      
Conds:RS_15._col2=RS_93._col0(Inner),Output:["_col1","_col3","_col4"]
+                                    <-Map 10 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_93]
                                         PartitionCols:_col0
-                                        Select Operator [SEL_60] (rows=852 
width=1910)
+                                        Select Operator [SEL_92] (rows=852 
width=1910)
                                           Output:["_col0"]
-                                          Filter Operator [FIL_59] (rows=852 
width=1910)
+                                          Filter Operator [FIL_91] (rows=852 
width=1910)
                                             predicate:((s_state) IN ('SD', 
'FL', 'MI', 'LA', 'MO', 'SC', 'AL', 'GA') and s_store_sk is not null)
                                             TableScan [TS_6] (rows=1704 
width=1910)
                                               
default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_state"]
                                     <-Reducer 2 [SIMPLE_EDGE]
                                       SHUFFLE [RS_15]
                                         PartitionCols:_col2
-                                        Merge Join Operator [MERGEJOIN_50] 
(rows=633595212 width=88)
-                                          
Conds:RS_55._col0=RS_58._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
-                                        <-Map 1 [SIMPLE_EDGE] vectorized
-                                          SHUFFLE [RS_55]
-                                            PartitionCols:_col0
-                                            Select Operator [SEL_54] 
(rows=575995635 width=88)
-                                              
Output:["_col0","_col1","_col2","_col3","_col4"]
-                                              Filter Operator [FIL_53] 
(rows=575995635 width=88)
-                                                predicate:(ss_item_sk is not 
null and ss_sold_date_sk is not null and ss_store_sk is not null)
-                                                TableScan [TS_0] 
(rows=575995635 width=88)
-                                                  
default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_ext_sales_price","ss_net_profit"]
+                                        Merge Join Operator [MERGEJOIN_80] 
(rows=633595212 width=88)
+                                          
Conds:RS_109._col0=RS_85._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
                                         <-Map 8 [SIMPLE_EDGE] vectorized
-                                          SHUFFLE [RS_58]
+                                          PARTITION_ONLY_SHUFFLE [RS_85]
                                             PartitionCols:_col0
-                                            Select Operator [SEL_57] 
(rows=36524 width=1119)
+                                            Select Operator [SEL_84] 
(rows=36524 width=1119)
                                               Output:["_col0"]
-                                              Filter Operator [FIL_56] 
(rows=36524 width=1119)
+                                              Filter Operator [FIL_83] 
(rows=36524 width=1119)
                                                 predicate:((d_year = 1999) and 
d_date_sk is not null)
                                                 TableScan [TS_3] (rows=73049 
width=1119)
                                                   
default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"]
+                                        <-Map 1 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_109]
+                                            PartitionCols:_col0
+                                            Select Operator [SEL_108] 
(rows=575995635 width=88)
+                                              
Output:["_col0","_col1","_col2","_col3","_col4"]
+                                              Filter Operator [FIL_107] 
(rows=575995635 width=88)
+                                                predicate:((ss_item_sk BETWEEN 
DynamicValue(RS_19_item_i_item_sk_min) AND 
DynamicValue(RS_19_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, 
DynamicValue(RS_19_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN 
DynamicValue(RS_13_d1_d_date_sk_min) AND DynamicValue(RS_13_d1_d_date_sk_max) 
and in_bloom_filter(ss_sold_date_sk, 
DynamicValue(RS_13_d1_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN 
DynamicValue(RS_16_store_s_store_sk_min) AND 
DynamicValue(RS_16_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, 
DynamicValue(RS_16_store_s_store_sk_bloom_filter))) and ss_item_sk is not null 
and ss_sold_date_sk is not null and ss_store_sk is not null)
+                                                TableScan [TS_0] 
(rows=575995635 width=88)
+                                                  
default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_ext_sales_price","ss_net_profit"]
+                                                <-Reducer 11 [BROADCAST_EDGE] 
vectorized
+                                                  BROADCAST [RS_98]
+                                                    Group By Operator [GBY_97] 
(rows=1 width=12)
+                                                      
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                    <-Map 10 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                      SHUFFLE [RS_96]
+                                                        Group By Operator 
[GBY_95] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                          Select Operator 
[SEL_94] (rows=852 width=1910)
+                                                            Output:["_col0"]
+                                                             Please refer to 
the previous Select Operator [SEL_92]
+                                                <-Reducer 13 [BROADCAST_EDGE] 
vectorized
+                                                  BROADCAST [RS_106]
+                                                    Group By Operator 
[GBY_105] (rows=1 width=12)
+                                                      
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                    <-Map 12 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                      SHUFFLE [RS_104]
+                                                        Group By Operator 
[GBY_103] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                          Select Operator 
[SEL_102] (rows=462000 width=1436)
+                                                            Output:["_col0"]
+                                                             Please refer to 
the previous Select Operator [SEL_100]
+                                                <-Reducer 9 [BROADCAST_EDGE] 
vectorized
+                                                  BROADCAST [RS_90]
+                                                    Group By Operator [GBY_89] 
(rows=1 width=12)
+                                                      
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                    <-Map 8 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                      PARTITION_ONLY_SHUFFLE 
[RS_88]
+                                                        Group By Operator 
[GBY_87] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                          Select Operator 
[SEL_86] (rows=36524 width=1119)
+                                                            Output:["_col0"]
+                                                             Please refer to 
the previous Select Operator [SEL_84]
 

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query37.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query37.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query37.q.out
index bbd085e..674c38c 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query37.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query37.q.out
@@ -33,71 +33,96 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Map 1 <- Reducer 6 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE)
 Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
 Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
-Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE)
+Reducer 8 <- Map 10 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:100
     Stage-1
       Reducer 4 vectorized
-      File Output Operator [FS_61]
-        Limit [LIM_60] (rows=100 width=135)
+      File Output Operator [FS_96]
+        Limit [LIM_95] (rows=100 width=135)
           Number of rows:100
-          Select Operator [SEL_59] (rows=316788826 width=135)
+          Select Operator [SEL_94] (rows=316788826 width=135)
             Output:["_col0","_col1","_col2"]
           <-Reducer 3 [SIMPLE_EDGE] vectorized
-            SHUFFLE [RS_58]
-              Group By Operator [GBY_57] (rows=316788826 width=135)
+            SHUFFLE [RS_93]
+              Group By Operator [GBY_92] (rows=316788826 width=135)
                 Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, 
KEY._col2
               <-Reducer 2 [SIMPLE_EDGE]
                 SHUFFLE [RS_22]
                   PartitionCols:_col0, _col1, _col2
                   Group By Operator [GBY_21] (rows=633577652 width=135)
                     Output:["_col0","_col1","_col2"],keys:_col2, _col3, _col4
-                    Merge Join Operator [MERGEJOIN_44] (rows=633577652 
width=135)
-                      
Conds:RS_47._col0=RS_50._col0(Inner),RS_50._col0=RS_18._col1(Inner),Output:["_col2","_col3","_col4"]
-                    <-Map 1 [SIMPLE_EDGE] vectorized
-                      SHUFFLE [RS_47]
-                        PartitionCols:_col0
-                        Select Operator [SEL_46] (rows=287989836 width=135)
-                          Output:["_col0"]
-                          Filter Operator [FIL_45] (rows=287989836 width=135)
-                            predicate:cs_item_sk is not null
-                            TableScan [TS_0] (rows=287989836 width=135)
-                              
default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_item_sk"]
+                    Merge Join Operator [MERGEJOIN_72] (rows=633577652 
width=135)
+                      
Conds:RS_91._col0=RS_75._col0(Inner),RS_75._col0=RS_18._col1(Inner),Output:["_col2","_col3","_col4"]
                     <-Map 5 [SIMPLE_EDGE] vectorized
-                      SHUFFLE [RS_50]
+                      PARTITION_ONLY_SHUFFLE [RS_75]
                         PartitionCols:_col0
-                        Select Operator [SEL_49] (rows=25666 width=1436)
+                        Select Operator [SEL_74] (rows=25666 width=1436)
                           Output:["_col0","_col1","_col2","_col3"]
-                          Filter Operator [FIL_48] (rows=25666 width=1436)
+                          Filter Operator [FIL_73] (rows=25666 width=1436)
                             predicate:((i_manufact_id) IN (678, 964, 918, 849) 
and i_current_price BETWEEN 22 AND 52 and i_item_sk is not null)
                             TableScan [TS_3] (rows=462000 width=1436)
                               
default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"]
-                    <-Reducer 7 [SIMPLE_EDGE]
-                      SHUFFLE [RS_18]
+                    <-Reducer 8 [SIMPLE_EDGE]
+                      PARTITION_ONLY_SHUFFLE [RS_18]
                         PartitionCols:_col1
-                        Merge Join Operator [MERGEJOIN_43] (rows=4593600 
width=15)
-                          Conds:RS_53._col0=RS_56._col0(Inner),Output:["_col1"]
-                        <-Map 6 [SIMPLE_EDGE] vectorized
-                          SHUFFLE [RS_53]
-                            PartitionCols:_col0
-                            Select Operator [SEL_52] (rows=4176000 width=15)
-                              Output:["_col0","_col1"]
-                              Filter Operator [FIL_51] (rows=4176000 width=15)
-                                predicate:(inv_date_sk is not null and 
inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500)
-                                TableScan [TS_6] (rows=37584000 width=15)
-                                  
default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"]
-                        <-Map 8 [SIMPLE_EDGE] vectorized
-                          SHUFFLE [RS_56]
+                        Merge Join Operator [MERGEJOIN_71] (rows=4593600 
width=15)
+                          Conds:RS_83._col0=RS_86._col0(Inner),Output:["_col1"]
+                        <-Map 10 [SIMPLE_EDGE] vectorized
+                          SHUFFLE [RS_86]
                             PartitionCols:_col0
-                            Select Operator [SEL_55] (rows=8116 width=1119)
+                            Select Operator [SEL_85] (rows=8116 width=1119)
                               Output:["_col0"]
-                              Filter Operator [FIL_54] (rows=8116 width=1119)
+                              Filter Operator [FIL_84] (rows=8116 width=1119)
                                 predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 
TIMESTAMP'2001-06-02 00:00:00.0' AND TIMESTAMP'2001-08-01 00:00:00.0' and 
d_date_sk is not null)
                                 TableScan [TS_9] (rows=73049 width=1119)
                                   
default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"]
+                        <-Map 7 [SIMPLE_EDGE] vectorized
+                          SHUFFLE [RS_83]
+                            PartitionCols:_col0
+                            Select Operator [SEL_82] (rows=4176000 width=15)
+                              Output:["_col0","_col1"]
+                              Filter Operator [FIL_81] (rows=4176000 width=15)
+                                predicate:(inv_date_sk is not null and 
inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500)
+                                TableScan [TS_6] (rows=37584000 width=15)
+                                  
default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"]
+                    <-Map 1 [SIMPLE_EDGE] vectorized
+                      SHUFFLE [RS_91]
+                        PartitionCols:_col0
+                        Select Operator [SEL_90] (rows=287989836 width=135)
+                          Output:["_col0"]
+                          Filter Operator [FIL_89] (rows=287989836 width=135)
+                            predicate:((cs_item_sk BETWEEN 
DynamicValue(RS_17_item_i_item_sk_min) AND 
DynamicValue(RS_17_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, 
DynamicValue(RS_17_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN 
DynamicValue(RS_18_inventory_inv_item_sk_min) AND 
DynamicValue(RS_18_inventory_inv_item_sk_max) and in_bloom_filter(cs_item_sk, 
DynamicValue(RS_18_inventory_inv_item_sk_bloom_filter))) and cs_item_sk is not 
null)
+                            TableScan [TS_0] (rows=287989836 width=135)
+                              
default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_item_sk"]
+                            <-Reducer 6 [BROADCAST_EDGE] vectorized
+                              BROADCAST [RS_80]
+                                Group By Operator [GBY_79] (rows=1 width=12)
+                                  
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                <-Map 5 [CUSTOM_SIMPLE_EDGE] vectorized
+                                  PARTITION_ONLY_SHUFFLE [RS_78]
+                                    Group By Operator [GBY_77] (rows=1 
width=12)
+                                      
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                      Select Operator [SEL_76] (rows=25666 
width=1436)
+                                        Output:["_col0"]
+                                         Please refer to the previous Select 
Operator [SEL_74]
+                            <-Reducer 9 [BROADCAST_EDGE] vectorized
+                              BROADCAST [RS_88]
+                                Group By Operator [GBY_87] (rows=1 width=12)
+                                  
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=4593600)"]
+                                <-Reducer 8 [CUSTOM_SIMPLE_EDGE]
+                                  PARTITION_ONLY_SHUFFLE [RS_50]
+                                    Group By Operator [GBY_49] (rows=1 
width=12)
+                                      
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=4593600)"]
+                                      Select Operator [SEL_48] (rows=4593600 
width=15)
+                                        Output:["_col0"]
+                                         Please refer to the previous Merge 
Join Operator [MERGEJOIN_71]
 

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query38.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query38.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query38.q.out
index e3040e4..78cb5e1 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query38.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query38.q.out
@@ -45,168 +45,231 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 10 <- Map 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE)
-Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS)
-Reducer 12 <- Map 17 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
-Reducer 13 <- Map 15 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE)
-Reducer 14 <- Reducer 13 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Map 1 <- Reducer 19 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE)
+Map 21 <- Reducer 13 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE)
+Map 22 <- Reducer 17 (BROADCAST_EDGE)
+Reducer 10 <- Map 21 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE)
+Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 13 <- Map 8 (CUSTOM_SIMPLE_EDGE)
+Reducer 14 <- Map 22 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 15 <- Map 18 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE)
+Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 17 <- Map 8 (CUSTOM_SIMPLE_EDGE)
+Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE)
 Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
-Reducer 3 <- Map 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 20 <- Map 18 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Map 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
 Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS)
 Reducer 6 <- Union 5 (SIMPLE_EDGE)
 Reducer 7 <- Reducer 6 (CUSTOM_SIMPLE_EDGE)
-Reducer 9 <- Map 16 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:100
     Stage-1
       Reducer 7 vectorized
-      File Output Operator [FS_165]
-        Limit [LIM_164] (rows=1 width=16)
+      File Output Operator [FS_244]
+        Limit [LIM_243] (rows=1 width=16)
           Number of rows:100
-          Group By Operator [GBY_163] (rows=1 width=16)
+          Group By Operator [GBY_242] (rows=1 width=16)
             Output:["_col0"],aggregations:["count(VALUE._col0)"]
           <-Reducer 6 [CUSTOM_SIMPLE_EDGE] vectorized
-            PARTITION_ONLY_SHUFFLE [RS_162]
-              Group By Operator [GBY_161] (rows=1 width=16)
+            PARTITION_ONLY_SHUFFLE [RS_241]
+              Group By Operator [GBY_240] (rows=1 width=16)
                 Output:["_col0"],aggregations:["count()"]
-                Select Operator [SEL_160] (rows=1 width=108)
-                  Filter Operator [FIL_159] (rows=1 width=108)
+                Select Operator [SEL_239] (rows=1 width=108)
+                  Filter Operator [FIL_238] (rows=1 width=108)
                     predicate:(_col3 = 3L)
-                    Select Operator [SEL_158] (rows=152458212 width=108)
+                    Select Operator [SEL_237] (rows=152458212 width=108)
                       Output:["_col3"]
-                      Group By Operator [GBY_157] (rows=152458212 width=108)
+                      Group By Operator [GBY_236] (rows=152458212 width=108)
                         
Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0,
 KEY._col1, KEY._col2
                       <-Union 5 [SIMPLE_EDGE]
-                        <-Reducer 11 [CONTAINS] vectorized
-                          Reduce Output Operator [RS_173]
+                        <-Reducer 12 [CONTAINS] vectorized
+                          Reduce Output Operator [RS_256]
                             PartitionCols:_col0, _col1, _col2
-                            Group By Operator [GBY_172] (rows=304916424 
width=108)
+                            Group By Operator [GBY_255] (rows=304916424 
width=108)
                               
Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0,
 _col1, _col2
-                              Group By Operator [GBY_171] (rows=87116929 
width=135)
+                              Group By Operator [GBY_254] (rows=87116929 
width=135)
                                 
Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col1, 
_col0, _col2
-                                Select Operator [SEL_170] (rows=174233858 
width=135)
+                                Select Operator [SEL_253] (rows=174233858 
width=135)
                                   Output:["_col0","_col1","_col2"]
-                                  Group By Operator [GBY_169] (rows=174233858 
width=135)
+                                  Group By Operator [GBY_252] (rows=174233858 
width=135)
                                     
Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2
-                                  <-Reducer 10 [SIMPLE_EDGE]
+                                  <-Reducer 11 [SIMPLE_EDGE]
                                     SHUFFLE [RS_42]
                                       PartitionCols:_col0, _col1, _col2
                                       Group By Operator [GBY_41] 
(rows=348467716 width=135)
                                         
Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3
-                                        Merge Join Operator [MERGEJOIN_118] 
(rows=348467716 width=135)
-                                          
Conds:RS_37._col1=RS_150._col0(Inner),Output:["_col3","_col6","_col7"]
-                                        <-Map 15 [SIMPLE_EDGE] vectorized
-                                          SHUFFLE [RS_150]
+                                        Merge Join Operator [MERGEJOIN_178] 
(rows=348467716 width=135)
+                                          
Conds:RS_37._col1=RS_219._col0(Inner),Output:["_col3","_col6","_col7"]
+                                        <-Map 18 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_219]
                                             PartitionCols:_col0
-                                            Select Operator [SEL_148] 
(rows=80000000 width=860)
+                                            Select Operator [SEL_216] 
(rows=80000000 width=860)
                                               Output:["_col0","_col1","_col2"]
-                                              Filter Operator [FIL_147] 
(rows=80000000 width=860)
+                                              Filter Operator [FIL_215] 
(rows=80000000 width=860)
                                                 predicate:c_customer_sk is not 
null
                                                 TableScan [TS_6] 
(rows=80000000 width=860)
                                                   
default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"]
-                                        <-Reducer 9 [SIMPLE_EDGE]
+                                        <-Reducer 10 [SIMPLE_EDGE]
                                           SHUFFLE [RS_37]
                                             PartitionCols:_col1
-                                            Merge Join Operator 
[MERGEJOIN_117] (rows=316788826 width=135)
-                                              
Conds:RS_168._col0=RS_145._col0(Inner),Output:["_col1","_col3"]
+                                            Merge Join Operator 
[MERGEJOIN_177] (rows=316788826 width=135)
+                                              
Conds:RS_251._col0=RS_203._col0(Inner),Output:["_col1","_col3"]
                                             <-Map 8 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_145]
+                                              PARTITION_ONLY_SHUFFLE [RS_203]
                                                 PartitionCols:_col0
-                                                Select Operator [SEL_143] 
(rows=8116 width=1119)
+                                                Select Operator [SEL_200] 
(rows=8116 width=1119)
                                                   Output:["_col0","_col1"]
-                                                  Filter Operator [FIL_142] 
(rows=8116 width=1119)
+                                                  Filter Operator [FIL_199] 
(rows=8116 width=1119)
                                                     predicate:(d_date_sk is 
not null and d_month_seq BETWEEN 1212 AND 1223)
                                                     TableScan [TS_3] 
(rows=73049 width=1119)
                                                       
default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"]
-                                            <-Map 16 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_168]
+                                            <-Map 21 [SIMPLE_EDGE] vectorized
+                                              SHUFFLE [RS_251]
                                                 PartitionCols:_col0
-                                                Select Operator [SEL_167] 
(rows=287989836 width=135)
+                                                Select Operator [SEL_250] 
(rows=287989836 width=135)
                                                   Output:["_col0","_col1"]
-                                                  Filter Operator [FIL_166] 
(rows=287989836 width=135)
-                                                    
predicate:(cs_bill_customer_sk is not null and cs_sold_date_sk is not null)
+                                                  Filter Operator [FIL_249] 
(rows=287989836 width=135)
+                                                    
predicate:((cs_bill_customer_sk BETWEEN 
DynamicValue(RS_38_customer_c_customer_sk_min) AND 
DynamicValue(RS_38_customer_c_customer_sk_max) and 
in_bloom_filter(cs_bill_customer_sk, 
DynamicValue(RS_38_customer_c_customer_sk_bloom_filter))) and (cs_sold_date_sk 
BETWEEN DynamicValue(RS_35_date_dim_d_date_sk_min) AND 
DynamicValue(RS_35_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, 
DynamicValue(RS_35_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk 
is not null and cs_sold_date_sk is not null)
                                                     TableScan [TS_25] 
(rows=287989836 width=135)
                                                       
default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk"]
-                        <-Reducer 14 [CONTAINS] vectorized
-                          Reduce Output Operator [RS_181]
+                                                    <-Reducer 13 
[BROADCAST_EDGE] vectorized
+                                                      BROADCAST [RS_246]
+                                                        Group By Operator 
[GBY_245] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                        <-Map 8 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                          
PARTITION_ONLY_SHUFFLE [RS_211]
+                                                            Group By Operator 
[GBY_208] (rows=1 width=12)
+                                                              
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                              Select Operator 
[SEL_204] (rows=8116 width=1119)
+                                                                
Output:["_col0"]
+                                                                 Please refer 
to the previous Select Operator [SEL_200]
+                                                    <-Reducer 20 
[BROADCAST_EDGE] vectorized
+                                                      BROADCAST [RS_248]
+                                                        Group By Operator 
[GBY_247] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=80000000)"]
+                                                        <-Map 18 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                          SHUFFLE [RS_225]
+                                                            Group By Operator 
[GBY_223] (rows=1 width=12)
+                                                              
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=80000000)"]
+                                                              Select Operator 
[SEL_220] (rows=80000000 width=860)
+                                                                
Output:["_col0"]
+                                                                 Please refer 
to the previous Select Operator [SEL_216]
+                        <-Reducer 16 [CONTAINS] vectorized
+                          Reduce Output Operator [RS_266]
                             PartitionCols:_col0, _col1, _col2
-                            Group By Operator [GBY_180] (rows=304916424 
width=108)
+                            Group By Operator [GBY_265] (rows=304916424 
width=108)
                               
Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0,
 _col1, _col2
-                              Group By Operator [GBY_179] (rows=43560808 
width=135)
+                              Group By Operator [GBY_264] (rows=43560808 
width=135)
                                 
Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col1, 
_col0, _col2
-                                Select Operator [SEL_178] (rows=87121617 
width=135)
+                                Select Operator [SEL_263] (rows=87121617 
width=135)
                                   Output:["_col0","_col1","_col2"]
-                                  Group By Operator [GBY_177] (rows=87121617 
width=135)
+                                  Group By Operator [GBY_262] (rows=87121617 
width=135)
                                     
Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2
-                                  <-Reducer 13 [SIMPLE_EDGE]
+                                  <-Reducer 15 [SIMPLE_EDGE]
                                     SHUFFLE [RS_68]
                                       PartitionCols:_col0, _col1, _col2
                                       Group By Operator [GBY_67] 
(rows=174243235 width=135)
                                         
Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3
-                                        Merge Join Operator [MERGEJOIN_120] 
(rows=174243235 width=135)
-                                          
Conds:RS_63._col1=RS_151._col0(Inner),Output:["_col3","_col6","_col7"]
-                                        <-Map 15 [SIMPLE_EDGE] vectorized
-                                          SHUFFLE [RS_151]
+                                        Merge Join Operator [MERGEJOIN_180] 
(rows=174243235 width=135)
+                                          
Conds:RS_63._col1=RS_221._col0(Inner),Output:["_col3","_col6","_col7"]
+                                        <-Map 18 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_221]
                                             PartitionCols:_col0
-                                             Please refer to the previous 
Select Operator [SEL_148]
-                                        <-Reducer 12 [SIMPLE_EDGE]
+                                             Please refer to the previous 
Select Operator [SEL_216]
+                                        <-Reducer 14 [SIMPLE_EDGE]
                                           SHUFFLE [RS_63]
                                             PartitionCols:_col1
-                                            Merge Join Operator 
[MERGEJOIN_119] (rows=158402938 width=135)
-                                              
Conds:RS_176._col0=RS_146._col0(Inner),Output:["_col1","_col3"]
+                                            Merge Join Operator 
[MERGEJOIN_179] (rows=158402938 width=135)
+                                              
Conds:RS_261._col0=RS_205._col0(Inner),Output:["_col1","_col3"]
                                             <-Map 8 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_146]
+                                              PARTITION_ONLY_SHUFFLE [RS_205]
                                                 PartitionCols:_col0
-                                                 Please refer to the previous 
Select Operator [SEL_143]
-                                            <-Map 17 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_176]
+                                                 Please refer to the previous 
Select Operator [SEL_200]
+                                            <-Map 22 [SIMPLE_EDGE] vectorized
+                                              SHUFFLE [RS_261]
                                                 PartitionCols:_col0
-                                                Select Operator [SEL_175] 
(rows=144002668 width=135)
+                                                Select Operator [SEL_260] 
(rows=144002668 width=135)
                                                   Output:["_col0","_col1"]
-                                                  Filter Operator [FIL_174] 
(rows=144002668 width=135)
-                                                    
predicate:(ws_bill_customer_sk is not null and ws_sold_date_sk is not null)
+                                                  Filter Operator [FIL_259] 
(rows=144002668 width=135)
+                                                    
predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_61_date_dim_d_date_sk_min) 
AND DynamicValue(RS_61_date_dim_d_date_sk_max) and 
in_bloom_filter(ws_sold_date_sk, 
DynamicValue(RS_61_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_51] 
(rows=144002668 width=135)
                                                       
default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"]
+                                                    <-Reducer 17 
[BROADCAST_EDGE] vectorized
+                                                      BROADCAST [RS_258]
+                                                        Group By Operator 
[GBY_257] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                        <-Map 8 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                          
PARTITION_ONLY_SHUFFLE [RS_212]
+                                                            Group By Operator 
[GBY_209] (rows=1 width=12)
+                                                              
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                              Select Operator 
[SEL_206] (rows=8116 width=1119)
+                                                                
Output:["_col0"]
+                                                                 Please refer 
to the previous Select Operator [SEL_200]
                         <-Reducer 4 [CONTAINS] vectorized
-                          Reduce Output Operator [RS_156]
+                          Reduce Output Operator [RS_235]
                             PartitionCols:_col0, _col1, _col2
-                            Group By Operator [GBY_155] (rows=304916424 
width=108)
+                            Group By Operator [GBY_234] (rows=304916424 
width=108)
                               
Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0,
 _col1, _col2
-                              Group By Operator [GBY_154] (rows=174238687 
width=88)
+                              Group By Operator [GBY_233] (rows=174238687 
width=88)
                                 
Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col1, 
_col0, _col2
-                                Select Operator [SEL_153] (rows=348477374 
width=88)
+                                Select Operator [SEL_232] (rows=348477374 
width=88)
                                   Output:["_col0","_col1","_col2"]
-                                  Group By Operator [GBY_152] (rows=348477374 
width=88)
+                                  Group By Operator [GBY_231] (rows=348477374 
width=88)
                                     
Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2
                                   <-Reducer 3 [SIMPLE_EDGE]
                                     SHUFFLE [RS_17]
                                       PartitionCols:_col0, _col1, _col2
                                       Group By Operator [GBY_16] 
(rows=696954748 width=88)
                                         
Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3
-                                        Merge Join Operator [MERGEJOIN_116] 
(rows=696954748 width=88)
-                                          
Conds:RS_12._col1=RS_149._col0(Inner),Output:["_col3","_col6","_col7"]
-                                        <-Map 15 [SIMPLE_EDGE] vectorized
-                                          SHUFFLE [RS_149]
+                                        Merge Join Operator [MERGEJOIN_176] 
(rows=696954748 width=88)
+                                          
Conds:RS_12._col1=RS_217._col0(Inner),Output:["_col3","_col6","_col7"]
+                                        <-Map 18 [SIMPLE_EDGE] vectorized
+                                          SHUFFLE [RS_217]
                                             PartitionCols:_col0
-                                             Please refer to the previous 
Select Operator [SEL_148]
+                                             Please refer to the previous 
Select Operator [SEL_216]
                                         <-Reducer 2 [SIMPLE_EDGE]
                                           SHUFFLE [RS_12]
                                             PartitionCols:_col1
-                                            Merge Join Operator 
[MERGEJOIN_115] (rows=633595212 width=88)
-                                              
Conds:RS_141._col0=RS_144._col0(Inner),Output:["_col1","_col3"]
+                                            Merge Join Operator 
[MERGEJOIN_175] (rows=633595212 width=88)
+                                              
Conds:RS_230._col0=RS_201._col0(Inner),Output:["_col1","_col3"]
                                             <-Map 8 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_144]
+                                              PARTITION_ONLY_SHUFFLE [RS_201]
                                                 PartitionCols:_col0
-                                                 Please refer to the previous 
Select Operator [SEL_143]
+                                                 Please refer to the previous 
Select Operator [SEL_200]
                                             <-Map 1 [SIMPLE_EDGE] vectorized
-                                              SHUFFLE [RS_141]
+                                              SHUFFLE [RS_230]
                                                 PartitionCols:_col0
-                                                Select Operator [SEL_140] 
(rows=575995635 width=88)
+                                                Select Operator [SEL_229] 
(rows=575995635 width=88)
                                                   Output:["_col0","_col1"]
-                                                  Filter Operator [FIL_139] 
(rows=575995635 width=88)
-                                                    predicate:(ss_customer_sk 
is not null and ss_sold_date_sk is not null)
+                                                  Filter Operator [FIL_228] 
(rows=575995635 width=88)
+                                                    predicate:((ss_customer_sk 
BETWEEN DynamicValue(RS_13_customer_c_customer_sk_min) AND 
DynamicValue(RS_13_customer_c_customer_sk_max) and 
in_bloom_filter(ss_customer_sk, 
DynamicValue(RS_13_customer_c_customer_sk_bloom_filter))) and (ss_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(ss_sold_date_sk, 
DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not 
null and ss_sold_date_sk is not null)
                                                     TableScan [TS_0] 
(rows=575995635 width=88)
                                                       
default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"]
+                                                    <-Reducer 19 
[BROADCAST_EDGE] vectorized
+                                                      BROADCAST [RS_227]
+                                                        Group By Operator 
[GBY_226] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=80000000)"]
+                                                        <-Map 18 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                          SHUFFLE [RS_224]
+                                                            Group By Operator 
[GBY_222] (rows=1 width=12)
+                                                              
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=80000000)"]
+                                                              Select Operator 
[SEL_218] (rows=80000000 width=860)
+                                                                
Output:["_col0"]
+                                                                 Please refer 
to the previous Select Operator [SEL_216]
+                                                    <-Reducer 9 
[BROADCAST_EDGE] vectorized
+                                                      BROADCAST [RS_214]
+                                                        Group By Operator 
[GBY_213] (rows=1 width=12)
+                                                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2,
 expectedEntries=1000000)"]
+                                                        <-Map 8 
[CUSTOM_SIMPLE_EDGE] vectorized
+                                                          
PARTITION_ONLY_SHUFFLE [RS_210]
+                                                            Group By Operator 
[GBY_207] (rows=1 width=12)
+                                                              
Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0,
 expectedEntries=1000000)"]
+                                                              Select Operator 
[SEL_202] (rows=8116 width=1119)
+                                                                
Output:["_col0"]
+                                                                 Please refer 
to the previous Select Operator [SEL_200]
 

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query39.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query39.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query39.q.out
index 35ce2dd..5966e24 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query39.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query39.q.out
@@ -69,23 +69,23 @@ Stage-0
     limit:-1
     Stage-1
       Reducer 7 vectorized
-      File Output Operator [FS_136]
-        Select Operator [SEL_135] (rows=13756683 width=15)
+      File Output Operator [FS_220]
+        Select Operator [SEL_219] (rows=13756683 width=15)
           
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"]
         <-Reducer 6 [SIMPLE_EDGE]
           SHUFFLE [RS_60]
-            Merge Join Operator [MERGEJOIN_106] (rows=13756683 width=15)
-              Conds:RS_129._col0, _col1=RS_134._col0, 
_col1(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+            Merge Join Operator [MERGEJOIN_190] (rows=13756683 width=15)
+              Conds:RS_213._col0, _col1=RS_218._col0, 
_col1(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
             <-Reducer 11 [SIMPLE_EDGE] vectorized
-              SHUFFLE [RS_134]
+              SHUFFLE [RS_218]
                 PartitionCols:_col0, _col1
-                Select Operator [SEL_133] (rows=12506076 width=15)
+                Select Operator [SEL_217] (rows=12506076 width=15)
                   Output:["_col0","_col1","_col2","_col3"]
-                  Filter Operator [FIL_132] (rows=12506076 width=15)
+                  Filter Operator [FIL_216] (rows=12506076 width=15)
                     predicate:CASE WHEN (((_col3 / _col4) = 0)) THEN (false) 
ELSE (((power(((_col5 - ((_col6 * _col6) / _col4)) / CASE WHEN ((_col4 = 1L)) 
THEN (null) ELSE ((_col4 - 1)) END), 0.5) / (_col3 / _col4)) > 1.0D)) END
-                    Select Operator [SEL_131] (rows=25012152 width=15)
+                    Select Operator [SEL_215] (rows=25012152 width=15)
                       Output:["_col0","_col1","_col3","_col4","_col5","_col6"]
-                      Group By Operator [GBY_130] (rows=25012152 width=15)
+                      Group By Operator [GBY_214] (rows=25012152 width=15)
                         
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0,
 KEY._col1, KEY._col2
                       <-Reducer 10 [SIMPLE_EDGE]
                         SHUFFLE [RS_52]
@@ -94,64 +94,64 @@ Stage-0
                             
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col3)","count(_col3)","sum(_col5)","sum(_col4)"],keys:_col1,
 _col2, _col0
                             Select Operator [SEL_49] (rows=50024305 width=15)
                               
Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
-                              Merge Join Operator [MERGEJOIN_105] 
(rows=50024305 width=15)
-                                
Conds:RS_46._col2=RS_124._col0(Inner),Output:["_col3","_col7","_col8","_col9"]
+                              Merge Join Operator [MERGEJOIN_189] 
(rows=50024305 width=15)
+                                
Conds:RS_46._col2=RS_208._col0(Inner),Output:["_col3","_col7","_col8","_col9"]
                               <-Map 14 [SIMPLE_EDGE] vectorized
-                                SHUFFLE [RS_124]
+                                SHUFFLE [RS_208]
                                   PartitionCols:_col0
-                                  Select Operator [SEL_122] (rows=27 
width=1029)
+                                  Select Operator [SEL_206] (rows=27 
width=1029)
                                     Output:["_col0","_col1"]
-                                    Filter Operator [FIL_121] (rows=27 
width=1029)
+                                    Filter Operator [FIL_205] (rows=27 
width=1029)
                                       predicate:w_warehouse_sk is not null
                                       TableScan [TS_9] (rows=27 width=1029)
                                         
default@warehouse,warehouse,Tbl:COMPLETE,Col:NONE,Output:["w_warehouse_sk","w_warehouse_name"]
                               <-Reducer 9 [SIMPLE_EDGE]
                                 SHUFFLE [RS_46]
                                   PartitionCols:_col2
-                                  Merge Join Operator [MERGEJOIN_104] 
(rows=45476640 width=15)
-                                    
Conds:RS_43._col1=RS_120._col0(Inner),Output:["_col2","_col3","_col7"]
+                                  Merge Join Operator [MERGEJOIN_188] 
(rows=45476640 width=15)
+                                    
Conds:RS_43._col1=RS_204._col0(Inner),Output:["_col2","_col3","_col7"]
                                   <-Map 13 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_120]
+                                    SHUFFLE [RS_204]
                                       PartitionCols:_col0
-                                      Select Operator [SEL_118] (rows=462000 
width=1436)
+                                      Select Operator [SEL_202] (rows=462000 
width=1436)
                                         Output:["_col0"]
-                                        Filter Operator [FIL_117] (rows=462000 
width=1436)
+                                        Filter Operator [FIL_201] (rows=462000 
width=1436)
                                           predicate:i_item_sk is not null
                                           TableScan [TS_6] (rows=462000 
width=1436)
                                             
default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk"]
                                   <-Reducer 8 [SIMPLE_EDGE]
                                     SHUFFLE [RS_43]
                                       PartitionCols:_col1
-                                      Merge Join Operator [MERGEJOIN_103] 
(rows=41342400 width=15)
-                                        
Conds:RS_110._col0=RS_116._col0(Inner),Output:["_col1","_col2","_col3"]
+                                      Merge Join Operator [MERGEJOIN_187] 
(rows=41342400 width=15)
+                                        
Conds:RS_194._col0=RS_200._col0(Inner),Output:["_col1","_col2","_col3"]
                                       <-Map 1 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_110]
+                                        SHUFFLE [RS_194]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_108] 
(rows=37584000 width=15)
+                                          Select Operator [SEL_192] 
(rows=37584000 width=15)
                                             
Output:["_col0","_col1","_col2","_col3"]
-                                            Filter Operator [FIL_107] 
(rows=37584000 width=15)
+                                            Filter Operator [FIL_191] 
(rows=37584000 width=15)
                                               predicate:(inv_date_sk is not 
null and inv_item_sk is not null and inv_warehouse_sk is not null)
                                               TableScan [TS_0] (rows=37584000 
width=15)
                                                 
default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_warehouse_sk","inv_quantity_on_hand"]
                                       <-Map 12 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_116]
+                                        SHUFFLE [RS_200]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_114] 
(rows=18262 width=1119)
+                                          Select Operator [SEL_198] 
(rows=18262 width=1119)
                                             Output:["_col0"]
-                                            Filter Operator [FIL_112] 
(rows=18262 width=1119)
+                                            Filter Operator [FIL_196] 
(rows=18262 width=1119)
                                               predicate:((d_moy = 5) and 
(d_year = 1999) and d_date_sk is not null)
                                               TableScan [TS_3] (rows=73049 
width=1119)
                                                 
default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
             <-Reducer 5 [SIMPLE_EDGE] vectorized
-              SHUFFLE [RS_129]
+              SHUFFLE [RS_213]
                 PartitionCols:_col0, _col1
-                Select Operator [SEL_128] (rows=12506076 width=15)
+                Select Operator [SEL_212] (rows=12506076 width=15)
                   Output:["_col0","_col1","_col2","_col3"]
-                  Filter Operator [FIL_127] (rows=12506076 width=15)
+                  Filter Operator [FIL_211] (rows=12506076 width=15)
                     predicate:CASE WHEN (((_col3 / _col4) = 0)) THEN (false) 
ELSE (((power(((_col5 - ((_col6 * _col6) / _col4)) / CASE WHEN ((_col4 = 1L)) 
THEN (null) ELSE ((_col4 - 1)) END), 0.5) / (_col3 / _col4)) > 1.0D)) END
-                    Select Operator [SEL_126] (rows=25012152 width=15)
+                    Select Operator [SEL_210] (rows=25012152 width=15)
                       Output:["_col0","_col1","_col3","_col4","_col5","_col6"]
-                      Group By Operator [GBY_125] (rows=25012152 width=15)
+                      Group By Operator [GBY_209] (rows=25012152 width=15)
                         
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0,
 KEY._col1, KEY._col2
                       <-Reducer 4 [SIMPLE_EDGE]
                         SHUFFLE [RS_24]
@@ -160,36 +160,36 @@ Stage-0
                             
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col3)","count(_col3)","sum(_col5)","sum(_col4)"],keys:_col1,
 _col2, _col0
                             Select Operator [SEL_21] (rows=50024305 width=15)
                               
Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
-                              Merge Join Operator [MERGEJOIN_102] 
(rows=50024305 width=15)
-                                
Conds:RS_18._col2=RS_123._col0(Inner),Output:["_col3","_col7","_col8","_col9"]
+                              Merge Join Operator [MERGEJOIN_186] 
(rows=50024305 width=15)
+                                
Conds:RS_18._col2=RS_207._col0(Inner),Output:["_col3","_col7","_col8","_col9"]
                               <-Map 14 [SIMPLE_EDGE] vectorized
-                                SHUFFLE [RS_123]
+                                SHUFFLE [RS_207]
                                   PartitionCols:_col0
-                                   Please refer to the previous Select 
Operator [SEL_122]
+                                   Please refer to the previous Select 
Operator [SEL_206]
                               <-Reducer 3 [SIMPLE_EDGE]
                                 SHUFFLE [RS_18]
                                   PartitionCols:_col2
-                                  Merge Join Operator [MERGEJOIN_101] 
(rows=45476640 width=15)
-                                    
Conds:RS_15._col1=RS_119._col0(Inner),Output:["_col2","_col3","_col7"]
+                                  Merge Join Operator [MERGEJOIN_185] 
(rows=45476640 width=15)
+                                    
Conds:RS_15._col1=RS_203._col0(Inner),Output:["_col2","_col3","_col7"]
                                   <-Map 13 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_119]
+                                    SHUFFLE [RS_203]
                                       PartitionCols:_col0
-                                       Please refer to the previous Select 
Operator [SEL_118]
+                                       Please refer to the previous Select 
Operator [SEL_202]
                                   <-Reducer 2 [SIMPLE_EDGE]
                                     SHUFFLE [RS_15]
                                       PartitionCols:_col1
-                                      Merge Join Operator [MERGEJOIN_100] 
(rows=41342400 width=15)
-                                        
Conds:RS_109._col0=RS_115._col0(Inner),Output:["_col1","_col2","_col3"]
+                                      Merge Join Operator [MERGEJOIN_184] 
(rows=41342400 width=15)
+                                        
Conds:RS_193._col0=RS_199._col0(Inner),Output:["_col1","_col2","_col3"]
                                       <-Map 1 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_109]
+                                        SHUFFLE [RS_193]
                                           PartitionCols:_col0
-                                           Please refer to the previous Select 
Operator [SEL_108]
+                                           Please refer to the previous Select 
Operator [SEL_192]
                                       <-Map 12 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_115]
+                                        SHUFFLE [RS_199]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_113] 
(rows=18262 width=1119)
+                                          Select Operator [SEL_197] 
(rows=18262 width=1119)
                                             Output:["_col0"]
-                                            Filter Operator [FIL_111] 
(rows=18262 width=1119)
+                                            Filter Operator [FIL_195] 
(rows=18262 width=1119)
                                               predicate:((d_moy = 4) and 
(d_year = 1999) and d_date_sk is not null)
                                                Please refer to the previous 
TableScan [TS_3]
 

Reply via email to