You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2018/06/25 16:04:13 UTC

[10/51] [partial] hive git commit: HIVE-12342 : Set default value of hive.optimize.index.filter to true (Igor Kryvenko via Ashutosh Chauhan)

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query33.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query33.q.out b/ql/src/test/results/clientpositive/perf/tez/query33.q.out
index ad922e7..30871e5 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query33.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query33.q.out
@@ -149,213 +149,324 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE)
-Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS)
-Reducer 13 <- Map 12 (SIMPLE_EDGE)
-Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE)
-Reducer 16 <- Map 22 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE)
-Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE)
-Reducer 19 <- Map 22 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE)
-Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE)
-Reducer 20 <- Map 17 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE)
-Reducer 21 <- Map 22 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE)
-Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Map 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE)
+Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE)
+Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE)
+Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE)
+Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 16 <- Map 15 (SIMPLE_EDGE)
+Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE)
+Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE)
+Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE)
+Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE)
+Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE)
+Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE)
+Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE)
+Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE)
+Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE)
+Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE)
 Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS)
 Reducer 6 <- Union 5 (SIMPLE_EDGE)
 Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
-Reducer 8 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
-Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE)
+Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:100
     Stage-1
       Reducer 7 vectorized
-      File Output Operator [FS_226]
-        Limit [LIM_225] (rows=100 width=108)
+      File Output Operator [FS_370]
+        Limit [LIM_369] (rows=100 width=108)
           Number of rows:100
-          Select Operator [SEL_224] (rows=335408073 width=108)
+          Select Operator [SEL_368] (rows=335408073 width=108)
             Output:["_col0","_col1"]
           <-Reducer 6 [SIMPLE_EDGE] vectorized
-            SHUFFLE [RS_223]
-              Group By Operator [GBY_222] (rows=335408073 width=108)
+            SHUFFLE [RS_367]
+              Group By Operator [GBY_366] (rows=335408073 width=108)
                 Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
               <-Union 5 [SIMPLE_EDGE]
-                <-Reducer 11 [CONTAINS] vectorized
-                  Reduce Output Operator [RS_238]
+                <-Reducer 10 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_382]
                     PartitionCols:_col0
-                    Group By Operator [GBY_237] (rows=670816147 width=108)
+                    Group By Operator [GBY_381] (rows=670816147 width=108)
                       Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
-                      Group By Operator [GBY_236] (rows=95833781 width=135)
+                      Group By Operator [GBY_380] (rows=191657247 width=135)
                         Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
-                      <-Reducer 10 [SIMPLE_EDGE]
-                        SHUFFLE [RS_109]
+                      <-Reducer 9 [SIMPLE_EDGE]
+                        SHUFFLE [RS_71]
                           PartitionCols:_col0
-                          Group By Operator [GBY_108] (rows=191667562 width=135)
+                          Group By Operator [GBY_70] (rows=383314495 width=135)
                             Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
-                            Merge Join Operator [MERGEJOIN_184] (rows=191667562 width=135)
-                              Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"]
+                            Merge Join Operator [MERGEJOIN_303] (rows=383314495 width=135)
+                              Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"]
                             <-Reducer 2 [SIMPLE_EDGE]
-                              SHUFFLE [RS_104]
+                              SHUFFLE [RS_66]
                                 PartitionCols:_col0
-                                Merge Join Operator [MERGEJOIN_173] (rows=508200 width=1436)
-                                  Conds:RS_199._col1=RS_205._col0(Inner),Output:["_col0","_col1"]
+                                Merge Join Operator [MERGEJOIN_293] (rows=508200 width=1436)
+                                  Conds:RS_319._col1=RS_325._col0(Inner),Output:["_col0","_col1"]
                                 <-Map 1 [SIMPLE_EDGE] vectorized
-                                  SHUFFLE [RS_199]
+                                  SHUFFLE [RS_319]
                                     PartitionCols:_col1
-                                    Select Operator [SEL_198] (rows=462000 width=1436)
+                                    Select Operator [SEL_318] (rows=462000 width=1436)
                                       Output:["_col0","_col1"]
-                                      Filter Operator [FIL_197] (rows=462000 width=1436)
+                                      Filter Operator [FIL_317] (rows=462000 width=1436)
                                         predicate:(i_item_sk is not null and i_manufact_id is not null)
                                         TableScan [TS_0] (rows=462000 width=1436)
                                           default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"]
-                                <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized
-                                  FORWARD [RS_205]
+                                <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized
+                                  FORWARD [RS_325]
                                     PartitionCols:_col0
-                                    Group By Operator [GBY_204] (rows=115500 width=1436)
+                                    Group By Operator [GBY_324] (rows=115500 width=1436)
                                       Output:["_col0"],keys:KEY._col0
-                                    <-Map 12 [SIMPLE_EDGE] vectorized
-                                      SHUFFLE [RS_203]
+                                    <-Map 15 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_323]
                                         PartitionCols:_col0
-                                        Group By Operator [GBY_202] (rows=231000 width=1436)
+                                        Group By Operator [GBY_322] (rows=231000 width=1436)
                                           Output:["_col0"],keys:i_manufact_id
-                                          Select Operator [SEL_201] (rows=231000 width=1436)
+                                          Select Operator [SEL_321] (rows=231000 width=1436)
                                             Output:["i_manufact_id"]
-                                            Filter Operator [FIL_200] (rows=231000 width=1436)
+                                            Filter Operator [FIL_320] (rows=231000 width=1436)
                                               predicate:((i_category = 'Books') and i_manufact_id is not null)
                                               TableScan [TS_3] (rows=462000 width=1436)
                                                 default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_category","i_manufact_id"]
-                            <-Reducer 21 [SIMPLE_EDGE]
-                              SHUFFLE [RS_105]
-                                PartitionCols:_col3
-                                Select Operator [SEL_100] (rows=174243235 width=135)
-                                  Output:["_col3","_col5"]
-                                  Merge Join Operator [MERGEJOIN_181] (rows=174243235 width=135)
-                                    Conds:RS_97._col2=RS_218._col0(Inner),Output:["_col1","_col3"]
-                                  <-Map 22 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_218]
+                            <-Reducer 23 [SIMPLE_EDGE]
+                              SHUFFLE [RS_67]
+                                PartitionCols:_col4
+                                Select Operator [SEL_62] (rows=348467716 width=135)
+                                  Output:["_col4","_col5"]
+                                  Merge Join Operator [MERGEJOIN_298] (rows=348467716 width=135)
+                                    Conds:RS_59._col1=RS_346._col0(Inner),Output:["_col2","_col3"]
+                                  <-Map 28 [SIMPLE_EDGE] vectorized
+                                    PARTITION_ONLY_SHUFFLE [RS_346]
                                       PartitionCols:_col0
-                                      Select Operator [SEL_215] (rows=20000000 width=1014)
+                                      Select Operator [SEL_343] (rows=20000000 width=1014)
                                         Output:["_col0"]
-                                        Filter Operator [FIL_214] (rows=20000000 width=1014)
+                                        Filter Operator [FIL_342] (rows=20000000 width=1014)
                                           predicate:((ca_gmt_offset = -6) and ca_address_sk is not null)
                                           TableScan [TS_16] (rows=40000000 width=1014)
                                             default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"]
-                                  <-Reducer 20 [SIMPLE_EDGE]
-                                    SHUFFLE [RS_97]
-                                      PartitionCols:_col2
-                                      Merge Join Operator [MERGEJOIN_180] (rows=158402938 width=135)
-                                        Conds:RS_235._col0=RS_213._col0(Inner),Output:["_col1","_col2","_col3"]
-                                      <-Map 17 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_213]
+                                  <-Reducer 22 [SIMPLE_EDGE]
+                                    SHUFFLE [RS_59]
+                                      PartitionCols:_col1
+                                      Merge Join Operator [MERGEJOIN_297] (rows=316788826 width=135)
+                                        Conds:RS_379._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"]
+                                      <-Map 20 [SIMPLE_EDGE] vectorized
+                                        PARTITION_ONLY_SHUFFLE [RS_330]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_210] (rows=18262 width=1119)
+                                          Select Operator [SEL_327] (rows=18262 width=1119)
                                             Output:["_col0"]
-                                            Filter Operator [FIL_209] (rows=18262 width=1119)
+                                            Filter Operator [FIL_326] (rows=18262 width=1119)
                                               predicate:((d_moy = 3) and (d_year = 1999) and d_date_sk is not null)
                                               TableScan [TS_13] (rows=73049 width=1119)
                                                 default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
-                                      <-Map 24 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_235]
+                                      <-Map 32 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_379]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_234] (rows=144002668 width=135)
+                                          Select Operator [SEL_378] (rows=287989836 width=135)
                                             Output:["_col0","_col1","_col2","_col3"]
-                                            Filter Operator [FIL_233] (rows=144002668 width=135)
-                                              predicate:(ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null)
-                                              TableScan [TS_85] (rows=144002668 width=135)
-                                                default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"]
-                <-Reducer 4 [CONTAINS] vectorized
-                  Reduce Output Operator [RS_221]
+                                            Filter Operator [FIL_377] (rows=287989836 width=135)
+                                              predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_66_item_i_item_sk_min) AND DynamicValue(RS_66_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_66_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null)
+                                              TableScan [TS_47] (rows=287989836 width=135)
+                                                default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"]
+                                              <-Reducer 11 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_376]
+                                                  Group By Operator [GBY_375] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                    SHUFFLE [RS_240]
+                                                      Group By Operator [GBY_239] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_238] (rows=508200 width=1436)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Merge Join Operator [MERGEJOIN_293]
+                                              <-Reducer 24 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_372]
+                                                  Group By Operator [GBY_371] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_338]
+                                                      Group By Operator [GBY_335] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_331] (rows=18262 width=1119)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_327]
+                                              <-Reducer 30 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_374]
+                                                  Group By Operator [GBY_373] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20000000)"]
+                                                  <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_354]
+                                                      Group By Operator [GBY_351] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=20000000)"]
+                                                        Select Operator [SEL_347] (rows=20000000 width=1014)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_343]
+                <-Reducer 13 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_394]
                     PartitionCols:_col0
-                    Group By Operator [GBY_220] (rows=670816147 width=108)
+                    Group By Operator [GBY_393] (rows=670816147 width=108)
                       Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
-                      Group By Operator [GBY_219] (rows=383325119 width=88)
+                      Group By Operator [GBY_392] (rows=95833781 width=135)
                         Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
-                      <-Reducer 3 [SIMPLE_EDGE]
-                        SHUFFLE [RS_34]
+                      <-Reducer 12 [SIMPLE_EDGE]
+                        SHUFFLE [RS_109]
                           PartitionCols:_col0
-                          Group By Operator [GBY_33] (rows=766650239 width=88)
+                          Group By Operator [GBY_108] (rows=191667562 width=135)
                             Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
-                            Merge Join Operator [MERGEJOIN_182] (rows=766650239 width=88)
-                              Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"]
+                            Merge Join Operator [MERGEJOIN_304] (rows=191667562 width=135)
+                              Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"]
                             <-Reducer 2 [SIMPLE_EDGE]
-                              SHUFFLE [RS_29]
+                              SHUFFLE [RS_104]
                                 PartitionCols:_col0
-                                 Please refer to the previous Merge Join Operator [MERGEJOIN_173]
-                            <-Reducer 16 [SIMPLE_EDGE]
-                              SHUFFLE [RS_30]
+                                 Please refer to the previous Merge Join Operator [MERGEJOIN_293]
+                            <-Reducer 26 [SIMPLE_EDGE]
+                              SHUFFLE [RS_105]
                                 PartitionCols:_col3
-                                Select Operator [SEL_25] (rows=696954748 width=88)
+                                Select Operator [SEL_100] (rows=174243235 width=135)
                                   Output:["_col3","_col5"]
-                                  Merge Join Operator [MERGEJOIN_175] (rows=696954748 width=88)
-                                    Conds:RS_22._col2=RS_216._col0(Inner),Output:["_col1","_col3"]
-                                  <-Map 22 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_216]
+                                  Merge Join Operator [MERGEJOIN_301] (rows=174243235 width=135)
+                                    Conds:RS_97._col2=RS_348._col0(Inner),Output:["_col1","_col3"]
+                                  <-Map 28 [SIMPLE_EDGE] vectorized
+                                    PARTITION_ONLY_SHUFFLE [RS_348]
                                       PartitionCols:_col0
-                                       Please refer to the previous Select Operator [SEL_215]
-                                  <-Reducer 15 [SIMPLE_EDGE]
-                                    SHUFFLE [RS_22]
+                                       Please refer to the previous Select Operator [SEL_343]
+                                  <-Reducer 25 [SIMPLE_EDGE]
+                                    SHUFFLE [RS_97]
                                       PartitionCols:_col2
-                                      Merge Join Operator [MERGEJOIN_174] (rows=633595212 width=88)
-                                        Conds:RS_208._col0=RS_211._col0(Inner),Output:["_col1","_col2","_col3"]
-                                      <-Map 17 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_211]
+                                      Merge Join Operator [MERGEJOIN_300] (rows=158402938 width=135)
+                                        Conds:RS_391._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"]
+                                      <-Map 20 [SIMPLE_EDGE] vectorized
+                                        PARTITION_ONLY_SHUFFLE [RS_332]
                                           PartitionCols:_col0
-                                           Please refer to the previous Select Operator [SEL_210]
-                                      <-Map 14 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_208]
+                                           Please refer to the previous Select Operator [SEL_327]
+                                      <-Map 33 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_391]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_207] (rows=575995635 width=88)
+                                          Select Operator [SEL_390] (rows=144002668 width=135)
                                             Output:["_col0","_col1","_col2","_col3"]
-                                            Filter Operator [FIL_206] (rows=575995635 width=88)
-                                              predicate:(ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null)
-                                              TableScan [TS_10] (rows=575995635 width=88)
-                                                default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"]
-                <-Reducer 9 [CONTAINS] vectorized
-                  Reduce Output Operator [RS_232]
+                                            Filter Operator [FIL_389] (rows=144002668 width=135)
+                                              predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_104_item_i_item_sk_min) AND DynamicValue(RS_104_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_104_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null)
+                                              TableScan [TS_85] (rows=144002668 width=135)
+                                                default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"]
+                                              <-Reducer 14 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_388]
+                                                  Group By Operator [GBY_387] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                    SHUFFLE [RS_280]
+                                                      Group By Operator [GBY_279] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_278] (rows=508200 width=1436)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Merge Join Operator [MERGEJOIN_293]
+                                              <-Reducer 27 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_384]
+                                                  Group By Operator [GBY_383] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_339]
+                                                      Group By Operator [GBY_336] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_333] (rows=18262 width=1119)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_327]
+                                              <-Reducer 31 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_386]
+                                                  Group By Operator [GBY_385] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20000000)"]
+                                                  <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_355]
+                                                      Group By Operator [GBY_352] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=20000000)"]
+                                                        Select Operator [SEL_349] (rows=20000000 width=1014)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_343]
+                <-Reducer 4 [CONTAINS] vectorized
+                  Reduce Output Operator [RS_365]
                     PartitionCols:_col0
-                    Group By Operator [GBY_231] (rows=670816147 width=108)
+                    Group By Operator [GBY_364] (rows=670816147 width=108)
                       Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
-                      Group By Operator [GBY_230] (rows=191657247 width=135)
+                      Group By Operator [GBY_363] (rows=383325119 width=88)
                         Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
-                      <-Reducer 8 [SIMPLE_EDGE]
-                        SHUFFLE [RS_71]
+                      <-Reducer 3 [SIMPLE_EDGE]
+                        SHUFFLE [RS_34]
                           PartitionCols:_col0
-                          Group By Operator [GBY_70] (rows=383314495 width=135)
+                          Group By Operator [GBY_33] (rows=766650239 width=88)
                             Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
-                            Merge Join Operator [MERGEJOIN_183] (rows=383314495 width=135)
-                              Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"]
+                            Merge Join Operator [MERGEJOIN_302] (rows=766650239 width=88)
+                              Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"]
                             <-Reducer 2 [SIMPLE_EDGE]
-                              SHUFFLE [RS_66]
+                              SHUFFLE [RS_29]
                                 PartitionCols:_col0
-                                 Please refer to the previous Merge Join Operator [MERGEJOIN_173]
+                                 Please refer to the previous Merge Join Operator [MERGEJOIN_293]
                             <-Reducer 19 [SIMPLE_EDGE]
-                              SHUFFLE [RS_67]
-                                PartitionCols:_col4
-                                Select Operator [SEL_62] (rows=348467716 width=135)
-                                  Output:["_col4","_col5"]
-                                  Merge Join Operator [MERGEJOIN_178] (rows=348467716 width=135)
-                                    Conds:RS_59._col1=RS_217._col0(Inner),Output:["_col2","_col3"]
-                                  <-Map 22 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_217]
+                              SHUFFLE [RS_30]
+                                PartitionCols:_col3
+                                Select Operator [SEL_25] (rows=696954748 width=88)
+                                  Output:["_col3","_col5"]
+                                  Merge Join Operator [MERGEJOIN_295] (rows=696954748 width=88)
+                                    Conds:RS_22._col2=RS_344._col0(Inner),Output:["_col1","_col3"]
+                                  <-Map 28 [SIMPLE_EDGE] vectorized
+                                    PARTITION_ONLY_SHUFFLE [RS_344]
                                       PartitionCols:_col0
-                                       Please refer to the previous Select Operator [SEL_215]
+                                       Please refer to the previous Select Operator [SEL_343]
                                   <-Reducer 18 [SIMPLE_EDGE]
-                                    SHUFFLE [RS_59]
-                                      PartitionCols:_col1
-                                      Merge Join Operator [MERGEJOIN_177] (rows=316788826 width=135)
-                                        Conds:RS_229._col0=RS_212._col0(Inner),Output:["_col1","_col2","_col3"]
-                                      <-Map 17 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_212]
+                                    SHUFFLE [RS_22]
+                                      PartitionCols:_col2
+                                      Merge Join Operator [MERGEJOIN_294] (rows=633595212 width=88)
+                                        Conds:RS_362._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"]
+                                      <-Map 20 [SIMPLE_EDGE] vectorized
+                                        PARTITION_ONLY_SHUFFLE [RS_328]
                                           PartitionCols:_col0
-                                           Please refer to the previous Select Operator [SEL_210]
-                                      <-Map 23 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_229]
+                                           Please refer to the previous Select Operator [SEL_327]
+                                      <-Map 17 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_362]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_228] (rows=287989836 width=135)
+                                          Select Operator [SEL_361] (rows=575995635 width=88)
                                             Output:["_col0","_col1","_col2","_col3"]
-                                            Filter Operator [FIL_227] (rows=287989836 width=135)
-                                              predicate:(cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null)
-                                              TableScan [TS_47] (rows=287989836 width=135)
-                                                default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"]
+                                            Filter Operator [FIL_360] (rows=575995635 width=88)
+                                              predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_29_item_i_item_sk_min) AND DynamicValue(RS_29_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_29_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null)
+                                              TableScan [TS_10] (rows=575995635 width=88)
+                                                default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"]
+                                              <-Reducer 21 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_341]
+                                                  Group By Operator [GBY_340] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_337]
+                                                      Group By Operator [GBY_334] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_329] (rows=18262 width=1119)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_327]
+                                              <-Reducer 29 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_357]
+                                                  Group By Operator [GBY_356] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20000000)"]
+                                                  <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                    PARTITION_ONLY_SHUFFLE [RS_353]
+                                                      Group By Operator [GBY_350] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=20000000)"]
+                                                        Select Operator [SEL_345] (rows=20000000 width=1014)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_343]
+                                              <-Reducer 8 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_359]
+                                                  Group By Operator [GBY_358] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                  <-Reducer 2 [CUSTOM_SIMPLE_EDGE]
+                                                    SHUFFLE [RS_200]
+                                                      Group By Operator [GBY_199] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_198] (rows=508200 width=1436)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Merge Join Operator [MERGEJOIN_293]
 

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query34.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query34.q.out b/ql/src/test/results/clientpositive/perf/tez/query34.q.out
index f5046e3..9b7b482 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query34.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query34.q.out
@@ -61,67 +61,72 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE)
+Map 5 <- Reducer 11 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 4 (BROADCAST_EDGE)
+Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE)
+Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE)
+Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE)
 Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
-Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
-Reducer 6 <- Map 10 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE)
-Reducer 7 <- Map 11 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE)
-Reducer 8 <- Reducer 7 (SIMPLE_EDGE)
+Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE)
+Reducer 6 <- Map 10 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE)
+Reducer 7 <- Map 12 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE)
+Reducer 8 <- Map 14 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
       Reducer 3 vectorized
-      File Output Operator [FS_78]
-        Select Operator [SEL_77] (rows=88000001 width=860)
+      File Output Operator [FS_135]
+        Select Operator [SEL_134] (rows=88000001 width=860)
           Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
         <-Reducer 2 [SIMPLE_EDGE]
           SHUFFLE [RS_35]
             Select Operator [SEL_34] (rows=88000001 width=860)
               Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
-              Merge Join Operator [MERGEJOIN_60] (rows=88000001 width=860)
-                Conds:RS_63._col0=RS_76._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"]
+              Merge Join Operator [MERGEJOIN_100] (rows=88000001 width=860)
+                Conds:RS_103._col0=RS_133._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"]
               <-Map 1 [SIMPLE_EDGE] vectorized
-                SHUFFLE [RS_63]
+                PARTITION_ONLY_SHUFFLE [RS_103]
                   PartitionCols:_col0
-                  Select Operator [SEL_62] (rows=80000000 width=860)
+                  Select Operator [SEL_102] (rows=80000000 width=860)
                     Output:["_col0","_col1","_col2","_col3","_col4"]
-                    Filter Operator [FIL_61] (rows=80000000 width=860)
+                    Filter Operator [FIL_101] (rows=80000000 width=860)
                       predicate:c_customer_sk is not null
                       TableScan [TS_0] (rows=80000000 width=860)
                         default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"]
-              <-Reducer 8 [SIMPLE_EDGE] vectorized
-                SHUFFLE [RS_76]
+              <-Reducer 9 [SIMPLE_EDGE] vectorized
+                SHUFFLE [RS_133]
                   PartitionCols:_col1
-                  Filter Operator [FIL_75] (rows=42591679 width=88)
+                  Filter Operator [FIL_132] (rows=42591679 width=88)
                     predicate:_col2 BETWEEN 15 AND 20
-                    Select Operator [SEL_74] (rows=383325119 width=88)
+                    Select Operator [SEL_131] (rows=383325119 width=88)
                       Output:["_col0","_col1","_col2"]
-                      Group By Operator [GBY_73] (rows=383325119 width=88)
+                      Group By Operator [GBY_130] (rows=383325119 width=88)
                         Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1
-                      <-Reducer 7 [SIMPLE_EDGE]
+                      <-Reducer 8 [SIMPLE_EDGE]
                         SHUFFLE [RS_26]
                           PartitionCols:_col0, _col1
                           Group By Operator [GBY_25] (rows=766650239 width=88)
                             Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4
-                            Merge Join Operator [MERGEJOIN_59] (rows=766650239 width=88)
-                              Conds:RS_21._col3=RS_72._col0(Inner),Output:["_col1","_col4"]
-                            <-Map 11 [SIMPLE_EDGE] vectorized
-                              SHUFFLE [RS_72]
+                            Merge Join Operator [MERGEJOIN_99] (rows=766650239 width=88)
+                              Conds:RS_21._col3=RS_119._col0(Inner),Output:["_col1","_col4"]
+                            <-Map 14 [SIMPLE_EDGE] vectorized
+                              SHUFFLE [RS_119]
                                 PartitionCols:_col0
-                                Select Operator [SEL_71] (rows=852 width=1910)
+                                Select Operator [SEL_118] (rows=852 width=1910)
                                   Output:["_col0"]
-                                  Filter Operator [FIL_70] (rows=852 width=1910)
+                                  Filter Operator [FIL_117] (rows=852 width=1910)
                                     predicate:((s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County', 'Fairfield County', 'Jackson County', 'Barrow County', 'Pennington County') and s_store_sk is not null)
                                     TableScan [TS_12] (rows=1704 width=1910)
                                       default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_county"]
-                            <-Reducer 6 [SIMPLE_EDGE]
+                            <-Reducer 7 [SIMPLE_EDGE]
                               SHUFFLE [RS_21]
                                 PartitionCols:_col3
-                                Merge Join Operator [MERGEJOIN_58] (rows=696954748 width=88)
+                                Merge Join Operator [MERGEJOIN_98] (rows=696954748 width=88)
                                   Conds:RS_18._col2=RS_19._col0(Inner),Output:["_col1","_col3","_col4"]
-                                <-Map 10 [SIMPLE_EDGE]
+                                <-Map 12 [SIMPLE_EDGE]
                                   SHUFFLE [RS_19]
                                     PartitionCols:_col0
                                     Select Operator [SEL_11] (rows=1200 width=107)
@@ -130,27 +135,71 @@ Stage-0
                                         predicate:(((hd_buy_potential = '>10000') or (hd_buy_potential = 'unknown')) and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.2D)) ELSE (null) END and hd_demo_sk is not null)
                                         TableScan [TS_9] (rows=7200 width=107)
                                           default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"]
-                                <-Reducer 5 [SIMPLE_EDGE]
+                                <-Reducer 6 [SIMPLE_EDGE]
                                   SHUFFLE [RS_18]
                                     PartitionCols:_col2
-                                    Merge Join Operator [MERGEJOIN_57] (rows=633595212 width=88)
-                                      Conds:RS_66._col0=RS_69._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
-                                    <-Map 4 [SIMPLE_EDGE] vectorized
-                                      SHUFFLE [RS_66]
+                                    Merge Join Operator [MERGEJOIN_97] (rows=633595212 width=88)
+                                      Conds:RS_129._col0=RS_109._col0(Inner),Output:["_col1","_col2","_col3","_col4"]
+                                    <-Map 10 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_109]
                                         PartitionCols:_col0
-                                        Select Operator [SEL_65] (rows=575995635 width=88)
-                                          Output:["_col0","_col1","_col2","_col3","_col4"]
-                                          Filter Operator [FIL_64] (rows=575995635 width=88)
-                                            predicate:(ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null)
-                                            TableScan [TS_3] (rows=575995635 width=88)
-                                              default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"]
-                                    <-Map 9 [SIMPLE_EDGE] vectorized
-                                      SHUFFLE [RS_69]
-                                        PartitionCols:_col0
-                                        Select Operator [SEL_68] (rows=8116 width=1119)
+                                        Select Operator [SEL_108] (rows=8116 width=1119)
                                           Output:["_col0"]
-                                          Filter Operator [FIL_67] (rows=8116 width=1119)
+                                          Filter Operator [FIL_107] (rows=8116 width=1119)
                                             predicate:((d_dom BETWEEN 1 AND 3 or d_dom BETWEEN 25 AND 28) and (d_year) IN (2000, 2001, 2002) and d_date_sk is not null)
                                             TableScan [TS_6] (rows=73049 width=1119)
                                               default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_dom"]
+                                    <-Map 5 [SIMPLE_EDGE] vectorized
+                                      SHUFFLE [RS_129]
+                                        PartitionCols:_col0
+                                        Select Operator [SEL_128] (rows=575995635 width=88)
+                                          Output:["_col0","_col1","_col2","_col3","_col4"]
+                                          Filter Operator [FIL_127] (rows=575995635 width=88)
+                                            predicate:((ss_customer_sk BETWEEN DynamicValue(RS_31_customer_c_customer_sk_min) AND DynamicValue(RS_31_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_31_customer_c_customer_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_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_22_store_s_store_sk_min) AND DynamicValue(RS_22_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_22_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_da
 te_sk is not null and ss_store_sk is not null)
+                                            TableScan [TS_3] (rows=575995635 width=88)
+                                              default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"]
+                                            <-Reducer 11 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_114]
+                                                Group By Operator [GBY_113] (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_112]
+                                                    Group By Operator [GBY_111] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_110] (rows=8116 width=1119)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_108]
+                                            <-Reducer 13 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_116]
+                                                Group By Operator [GBY_115] (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]
+                                                  SHUFFLE [RS_69]
+                                                    Group By Operator [GBY_68] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_67] (rows=1200 width=107)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_11]
+                                            <-Reducer 15 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_124]
+                                                Group By Operator [GBY_123] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"]
+                                                <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                  SHUFFLE [RS_122]
+                                                    Group By Operator [GBY_121] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                      Select Operator [SEL_120] (rows=852 width=1910)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_118]
+                                            <-Reducer 4 [BROADCAST_EDGE] vectorized
+                                              BROADCAST [RS_126]
+                                                Group By Operator [GBY_125] (rows=1 width=12)
+                                                  Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=80000000)"]
+                                                <-Map 1 [CUSTOM_SIMPLE_EDGE] vectorized
+                                                  PARTITION_ONLY_SHUFFLE [RS_106]
+                                                    Group By Operator [GBY_105] (rows=1 width=12)
+                                                      Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=80000000)"]
+                                                      Select Operator [SEL_104] (rows=80000000 width=860)
+                                                        Output:["_col0"]
+                                                         Please refer to the previous Select Operator [SEL_102]
 

http://git-wip-us.apache.org/repos/asf/hive/blob/f2c4f319/ql/src/test/results/clientpositive/perf/tez/query35.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query35.q.out b/ql/src/test/results/clientpositive/perf/tez/query35.q.out
index 772f994..4fe3856 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query35.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query35.q.out
@@ -113,32 +113,39 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 10 <- Map 11 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
-Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE)
-Reducer 13 <- Reducer 12 (SIMPLE_EDGE)
-Reducer 14 <- Map 11 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE)
+Map 10 <- Reducer 13 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE)
+Map 20 <- Reducer 16 (BROADCAST_EDGE)
+Map 21 <- Reducer 19 (BROADCAST_EDGE)
+Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE)
+Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE)
+Reducer 14 <- Map 12 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE)
 Reducer 15 <- Reducer 14 (SIMPLE_EDGE)
-Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
-Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
-Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE), Reducer 15 (ONE_TO_ONE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 16 <- Map 12 (CUSTOM_SIMPLE_EDGE)
+Reducer 17 <- Map 12 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE)
+Reducer 18 <- Reducer 17 (SIMPLE_EDGE)
+Reducer 19 <- 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 <- Reducer 11 (SIMPLE_EDGE), Reducer 15 (ONE_TO_ONE_EDGE), Reducer 18 (ONE_TO_ONE_EDGE), Reducer 3 (SIMPLE_EDGE)
 Reducer 5 <- Reducer 4 (SIMPLE_EDGE)
 Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 3 (CUSTOM_SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
       Reducer 6 vectorized
-      File Output Operator [FS_144]
-        Limit [LIM_143] (rows=100 width=88)
+      File Output Operator [FS_225]
+        Limit [LIM_224] (rows=100 width=88)
           Number of rows:100
-          Select Operator [SEL_142] (rows=1045432122 width=88)
+          Select Operator [SEL_223] (rows=1045432122 width=88)
             Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16"]
           <-Reducer 5 [SIMPLE_EDGE] vectorized
-            SHUFFLE [RS_141]
-              Select Operator [SEL_140] (rows=1045432122 width=88)
+            SHUFFLE [RS_222]
+              Select Operator [SEL_221] (rows=1045432122 width=88)
                 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col14","_col15","_col16","_col17"]
-                Group By Operator [GBY_139] (rows=1045432122 width=88)
+                Group By Operator [GBY_220] (rows=1045432122 width=88)
                   Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","count(VALUE._col2)","max(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","max(VALUE._col6)","sum(VALUE._col7)","count(VALUE._col8)","max(VALUE._col9)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5
                 <-Reducer 4 [SIMPLE_EDGE]
                   SHUFFLE [RS_63]
@@ -149,124 +156,168 @@ Stage-0
                         Output:["_col4","_col6","_col7","_col8","_col9","_col10"]
                         Filter Operator [FIL_60] (rows=2090864244 width=88)
                           predicate:(_col12 is not null or _col14 is not null)
-                          Merge Join Operator [MERGEJOIN_109] (rows=2090864244 width=88)
-                            Conds:RS_55._col0=RS_56._col0(Left Semi),RS_55._col0=RS_132._col0(Left Outer),RS_55._col0=RS_138._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"]
-                          <-Reducer 10 [SIMPLE_EDGE]
+                          Merge Join Operator [MERGEJOIN_173] (rows=2090864244 width=88)
+                            Conds:RS_55._col0=RS_56._col0(Left Semi),RS_55._col0=RS_211._col0(Left Outer),RS_55._col0=RS_219._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"]
+                          <-Reducer 3 [SIMPLE_EDGE]
+                            PARTITION_ONLY_SHUFFLE [RS_55]
+                              PartitionCols:_col0
+                              Merge Join Operator [MERGEJOIN_169] (rows=96800003 width=860)
+                                Conds:RS_50._col1=RS_182._col0(Inner),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10"]
+                              <-Map 9 [SIMPLE_EDGE] vectorized
+                                SHUFFLE [RS_182]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_181] (rows=1861800 width=385)
+                                    Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+                                    Filter Operator [FIL_180] (rows=1861800 width=385)
+                                      predicate:cd_demo_sk is not null
+                                      TableScan [TS_6] (rows=1861800 width=385)
+                                        default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_dep_count","cd_dep_employed_count","cd_dep_college_count"]
+                              <-Reducer 2 [SIMPLE_EDGE]
+                                SHUFFLE [RS_50]
+                                  PartitionCols:_col1
+                                  Merge Join Operator [MERGEJOIN_168] (rows=88000001 width=860)
+                                    Conds:RS_176._col2=RS_179._col0(Inner),Output:["_col0","_col1","_col4"]
+                                  <-Map 1 [SIMPLE_EDGE] vectorized
+                                    SHUFFLE [RS_176]
+                                      PartitionCols:_col2
+                                      Select Operator [SEL_175] (rows=80000000 width=860)
+                                        Output:["_col0","_col1","_col2"]
+                                        Filter Operator [FIL_174] (rows=80000000 width=860)
+                                          predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null)
+                                          TableScan [TS_0] (rows=80000000 width=860)
+                                            default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+                                  <-Map 8 [SIMPLE_EDGE] vectorized
+                                    SHUFFLE [RS_179]
+                                      PartitionCols:_col0
+                                      Select Operator [SEL_178] (rows=40000000 width=1014)
+                                        Output:["_col0","_col1"]
+                                        Filter Operator [FIL_177] (rows=40000000 width=1014)
+                                          predicate:ca_address_sk is not null
+                                          TableScan [TS_3] (rows=40000000 width=1014)
+                                            default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+                          <-Reducer 11 [SIMPLE_EDGE]
                             SHUFFLE [RS_56]
                               PartitionCols:_col0
                               Group By Operator [GBY_54] (rows=633595212 width=88)
                                 Output:["_col0"],keys:_col0
                                 Select Operator [SEL_18] (rows=633595212 width=88)
                                   Output:["_col0"]
-                                  Merge Join Operator [MERGEJOIN_106] (rows=633595212 width=88)
-                                    Conds:RS_121._col0=RS_124._col0(Inner),Output:["_col1"]
-                                  <-Map 11 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_124]
+                                  Merge Join Operator [MERGEJOIN_170] (rows=633595212 width=88)
+                                    Conds:RS_203._col0=RS_185._col0(Inner),Output:["_col1"]
+                                  <-Map 12 [SIMPLE_EDGE] vectorized
+                                    PARTITION_ONLY_SHUFFLE [RS_185]
                                       PartitionCols:_col0
-                                      Select Operator [SEL_123] (rows=12174 width=1119)
+                                      Select Operator [SEL_184] (rows=12174 width=1119)
                                         Output:["_col0"]
-                                        Filter Operator [FIL_122] (rows=12174 width=1119)
+                                        Filter Operator [FIL_183] (rows=12174 width=1119)
                                           predicate:((d_qoy < 4) and (d_year = 1999) and d_date_sk is not null)
                                           TableScan [TS_12] (rows=73049 width=1119)
                                             default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"]
-                                  <-Map 9 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_121]
+                                  <-Map 10 [SIMPLE_EDGE] vectorized
+                                    SHUFFLE [RS_203]
                                       PartitionCols:_col0
-                                      Select Operator [SEL_120] (rows=575995635 width=88)
+                                      Select Operator [SEL_202] (rows=575995635 width=88)
                                         Output:["_col0","_col1"]
-                                        Filter Operator [FIL_119] (rows=575995635 width=88)
-                                          predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null)
+                                        Filter Operator [FIL_201] (rows=575995635 width=88)
+                                          predicate:((ss_customer_sk BETWEEN DynamicValue(RS_55_c_c_customer_sk_min) AND DynamicValue(RS_55_c_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_55_c_c_customer_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null)
                                           TableScan [TS_9] (rows=575995635 width=88)
                                             default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"]
-                          <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized
-                            FORWARD [RS_132]
+                                          <-Reducer 13 [BROADCAST_EDGE] vectorized
+                                            BROADCAST [RS_198]
+                                              Group By Operator [GBY_197] (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
+                                                PARTITION_ONLY_SHUFFLE [RS_194]
+                                                  Group By Operator [GBY_191] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                    Select Operator [SEL_186] (rows=12174 width=1119)
+                                                      Output:["_col0"]
+                                                       Please refer to the previous Select Operator [SEL_184]
+                                          <-Reducer 7 [BROADCAST_EDGE] vectorized
+                                            BROADCAST [RS_200]
+                                              Group By Operator [GBY_199] (rows=1 width=12)
+                                                Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=96800000)"]
+                                              <-Reducer 3 [CUSTOM_SIMPLE_EDGE]
+                                                PARTITION_ONLY_SHUFFLE [RS_136]
+                                                  Group By Operator [GBY_135] (rows=1 width=12)
+                                                    Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=96800000)"]
+                                                    Select Operator [SEL_134] (rows=96800003 width=860)
+                                                      Output:["_col0"]
+                                                       Please refer to the previous Merge Join Operator [MERGEJOIN_169]
+                          <-Reducer 15 [ONE_TO_ONE_EDGE] vectorized
+                            FORWARD [RS_211]
                               PartitionCols:_col0
-                              Select Operator [SEL_131] (rows=79201469 width=135)
+                              Select Operator [SEL_210] (rows=79201469 width=135)
                                 Output:["_col0","_col1"]
-                                Group By Operator [GBY_130] (rows=79201469 width=135)
+                                Group By Operator [GBY_209] (rows=79201469 width=135)
                                   Output:["_col0"],keys:KEY._col0
-                                <-Reducer 12 [SIMPLE_EDGE]
+                                <-Reducer 14 [SIMPLE_EDGE]
                                   SHUFFLE [RS_30]
                                     PartitionCols:_col0
                                     Group By Operator [GBY_29] (rows=158402938 width=135)
                                       Output:["_col0"],keys:_col1
-                                      Merge Join Operator [MERGEJOIN_107] (rows=158402938 width=135)
-                                        Conds:RS_129._col0=RS_125._col0(Inner),Output:["_col1"]
-                                      <-Map 11 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_125]
+                                      Merge Join Operator [MERGEJOIN_171] (rows=158402938 width=135)
+                                        Conds:RS_208._col0=RS_187._col0(Inner),Output:["_col1"]
+                                      <-Map 12 [SIMPLE_EDGE] vectorized
+                                        PARTITION_ONLY_SHUFFLE [RS_187]
                                           PartitionCols:_col0
-                                           Please refer to the previous Select Operator [SEL_123]
-                                      <-Map 16 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_129]
+                                           Please refer to the previous Select Operator [SEL_184]
+                                      <-Map 20 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_208]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_128] (rows=144002668 width=135)
+                                          Select Operator [SEL_207] (rows=144002668 width=135)
                                             Output:["_col0","_col1"]
-                                            Filter Operator [FIL_127] (rows=144002668 width=135)
-                                              predicate:(ws_bill_customer_sk is not null and ws_sold_date_sk is not null)
+                                            Filter Operator [FIL_206] (rows=144002668 width=135)
+                                              predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_26_date_dim_d_date_sk_min) AND DynamicValue(RS_26_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_26_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_19] (rows=144002668 width=135)
                                                 default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"]
-                          <-Reducer 15 [ONE_TO_ONE_EDGE] vectorized
-                            FORWARD [RS_138]
+                                              <-Reducer 16 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_205]
+                                                  Group By Operator [GBY_204] (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
+                                                    PARTITION_ONLY_SHUFFLE [RS_195]
+                                                      Group By Operator [GBY_192] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_188] (rows=12174 width=1119)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_184]
+                          <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized
+                            FORWARD [RS_219]
                               PartitionCols:_col0
-                              Select Operator [SEL_137] (rows=158394413 width=135)
+                              Select Operator [SEL_218] (rows=158394413 width=135)
                                 Output:["_col0","_col1"]
-                                Group By Operator [GBY_136] (rows=158394413 width=135)
+                                Group By Operator [GBY_217] (rows=158394413 width=135)
                                   Output:["_col0"],keys:KEY._col0
-                                <-Reducer 14 [SIMPLE_EDGE]
+                                <-Reducer 17 [SIMPLE_EDGE]
                                   SHUFFLE [RS_44]
                                     PartitionCols:_col0
                                     Group By Operator [GBY_43] (rows=316788826 width=135)
                                       Output:["_col0"],keys:_col1
-                                      Merge Join Operator [MERGEJOIN_108] (rows=316788826 width=135)
-                                        Conds:RS_135._col0=RS_126._col0(Inner),Output:["_col1"]
-                                      <-Map 11 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_126]
+                                      Merge Join Operator [MERGEJOIN_172] (rows=316788826 width=135)
+                                        Conds:RS_216._col0=RS_189._col0(Inner),Output:["_col1"]
+                                      <-Map 12 [SIMPLE_EDGE] vectorized
+                                        PARTITION_ONLY_SHUFFLE [RS_189]
                                           PartitionCols:_col0
-                                           Please refer to the previous Select Operator [SEL_123]
-                                      <-Map 17 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_135]
+                                           Please refer to the previous Select Operator [SEL_184]
+                                      <-Map 21 [SIMPLE_EDGE] vectorized
+                                        SHUFFLE [RS_216]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_134] (rows=287989836 width=135)
+                                          Select Operator [SEL_215] (rows=287989836 width=135)
                                             Output:["_col0","_col1"]
-                                            Filter Operator [FIL_133] (rows=287989836 width=135)
-                                              predicate:(cs_ship_customer_sk is not null and cs_sold_date_sk is not null)
+                                            Filter Operator [FIL_214] (rows=287989836 width=135)
+                                              predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_40_date_dim_d_date_sk_min) AND DynamicValue(RS_40_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_40_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null)
                                               TableScan [TS_33] (rows=287989836 width=135)
                                                 default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_ship_customer_sk"]
-                          <-Reducer 3 [SIMPLE_EDGE]
-                            SHUFFLE [RS_55]
-                              PartitionCols:_col0
-                              Merge Join Operator [MERGEJOIN_105] (rows=96800003 width=860)
-                                Conds:RS_50._col1=RS_118._col0(Inner),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10"]
-                              <-Map 8 [SIMPLE_EDGE] vectorized
-                                SHUFFLE [RS_118]
-                                  PartitionCols:_col0
-                                  Select Operator [SEL_117] (rows=1861800 width=385)
-                                    Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
-                                    Filter Operator [FIL_116] (rows=1861800 width=385)
-                                      predicate:cd_demo_sk is not null
-                                      TableScan [TS_6] (rows=1861800 width=385)
-                                        default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_dep_count","cd_dep_employed_count","cd_dep_college_count"]
-                              <-Reducer 2 [SIMPLE_EDGE]
-                                SHUFFLE [RS_50]
-                                  PartitionCols:_col1
-                                  Merge Join Operator [MERGEJOIN_104] (rows=88000001 width=860)
-                                    Conds:RS_112._col2=RS_115._col0(Inner),Output:["_col0","_col1","_col4"]
-                                  <-Map 1 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_112]
-                                      PartitionCols:_col2
-                                      Select Operator [SEL_111] (rows=80000000 width=860)
-                                        Output:["_col0","_col1","_col2"]
-                                        Filter Operator [FIL_110] (rows=80000000 width=860)
-                                          predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null)
-                                          TableScan [TS_0] (rows=80000000 width=860)
-                                            default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
-                                  <-Map 7 [SIMPLE_EDGE] vectorized
-                                    SHUFFLE [RS_115]
-                                      PartitionCols:_col0
-                                      Select Operator [SEL_114] (rows=40000000 width=1014)
-                                        Output:["_col0","_col1"]
-                                        Filter Operator [FIL_113] (rows=40000000 width=1014)
-                                          predicate:ca_address_sk is not null
-                                          TableScan [TS_3] (rows=40000000 width=1014)
-                                            default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+                                              <-Reducer 19 [BROADCAST_EDGE] vectorized
+                                                BROADCAST [RS_213]
+                                                  Group By Operator [GBY_212] (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
+                                                    PARTITION_ONLY_SHUFFLE [RS_196]
+                                                      Group By Operator [GBY_193] (rows=1 width=12)
+                                                        Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"]
+                                                        Select Operator [SEL_190] (rows=12174 width=1119)
+                                                          Output:["_col0"]
+                                                           Please refer to the previous Select Operator [SEL_184]