http://git-wip-us.apache.org/repos/asf/hive/blob/cf492a8c/ql/src/test/results/clientpositive/llap/explainuser_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/explainuser_2.q.out 
b/ql/src/test/results/clientpositive/llap/explainuser_2.q.out
index 361dc07..735915e 100644
--- a/ql/src/test/results/clientpositive/llap/explainuser_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/explainuser_2.q.out
@@ -192,9 +192,9 @@ Stage-0
     Stage-1
       Reducer 3 llap
       File Output Operator [FS_16]
-        Select Operator [SEL_15] (rows=64 width=268)
+        Select Operator [SEL_15] (rows=63 width=268)
           Output:["_col0","_col1","_col2"]
-          Merge Join Operator [MERGEJOIN_26] (rows=64 width=268)
+          Merge Join Operator [MERGEJOIN_26] (rows=63 width=268)
             
Conds:RS_12._col3=RS_35._col0(Inner),Output:["_col1","_col2","_col4"]
           <-Map 5 [SIMPLE_EDGE] vectorized, llap
             SHUFFLE [RS_35]
@@ -208,7 +208,7 @@ Stage-0
           <-Reducer 2 [SIMPLE_EDGE] llap
             SHUFFLE [RS_12]
               PartitionCols:_col3
-              Merge Join Operator [MERGEJOIN_25] (rows=40 width=266)
+              Merge Join Operator [MERGEJOIN_25] (rows=39 width=266)
                 
Conds:RS_29._col0=RS_32._col0(Inner),Output:["_col1","_col2","_col3"]
               <-Map 1 [SIMPLE_EDGE] vectorized, llap
                 SHUFFLE [RS_29]
@@ -443,146 +443,141 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Map 1 <- Union 2 (CONTAINS)
+Map 12 <- Union 10 (CONTAINS)
 Map 13 <- Union 14 (CONTAINS)
 Map 16 <- Union 14 (CONTAINS)
-Map 8 <- Union 2 (CONTAINS)
-Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE)
-Reducer 11 <- Map 17 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 6 
(CONTAINS)
+Map 9 <- Union 10 (CONTAINS)
+Reducer 11 <- Union 10 (SIMPLE_EDGE)
 Reducer 15 <- Union 14 (SIMPLE_EDGE)
-Reducer 3 <- Union 2 (SIMPLE_EDGE)
-Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
-Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
-Reducer 7 <- Union 6 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE), Union 4 
(CONTAINS)
+Reducer 5 <- Union 4 (SIMPLE_EDGE)
+Reducer 6 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 15 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Union 4 
(CONTAINS)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
-      Reducer 7 vectorized, llap
-      File Output Operator [FS_101]
-        Group By Operator [GBY_100] (rows=28 width=177)
+      Reducer 5 vectorized, llap
+      File Output Operator [FS_96]
+        Group By Operator [GBY_95] (rows=33 width=177)
           Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-        <-Union 6 [SIMPLE_EDGE]
-          <-Reducer 11 [CONTAINS] llap
+        <-Union 4 [SIMPLE_EDGE]
+          <-Reducer 3 [CONTAINS] llap
             Reduce Output Operator [RS_56]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_55] (rows=28 width=177)
+              Group By Operator [GBY_55] (rows=33 width=177)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_51] (rows=33 width=177)
+                Select Operator [SEL_25] (rows=33 width=177)
                   Output:["_col0","_col1"]
-                  Merge Join Operator [MERGEJOIN_85] (rows=33 width=177)
-                    
Conds:RS_48._col2=RS_111._col0(Inner),Output:["_col1","_col2"]
-                  <-Map 17 [SIMPLE_EDGE] vectorized, llap
-                    SHUFFLE [RS_111]
-                      PartitionCols:_col0
-                      Select Operator [SEL_110] (rows=500 width=87)
-                        Output:["_col0"]
-                        Filter Operator [FIL_109] (rows=500 width=87)
-                          predicate:key is not null
-                          TableScan [TS_42] (rows=500 width=87)
-                            
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"]
-                  <-Reducer 10 [SIMPLE_EDGE] llap
-                    SHUFFLE [RS_48]
+                  Merge Join Operator [MERGEJOIN_82] (rows=33 width=177)
+                    
Conds:RS_22._col2=RS_94._col1(Inner),Output:["_col1","_col4"]
+                  <-Reducer 11 [SIMPLE_EDGE] vectorized, llap
+                    SHUFFLE [RS_94]
+                      PartitionCols:_col1
+                      Select Operator [SEL_93] (rows=262 width=178)
+                        Output:["_col1"]
+                        Group By Operator [GBY_92] (rows=262 width=178)
+                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                        <-Union 10 [SIMPLE_EDGE]
+                          <-Map 12 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_107]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_106] (rows=262 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_105] (rows=500 width=178)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_104] (rows=500 
width=178)
+                                    predicate:value is not null
+                                    TableScan [TS_9] (rows=500 width=178)
+                                      Output:["key","value"]
+                          <-Map 9 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_103]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_102] (rows=262 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_101] (rows=25 width=175)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_100] (rows=25 width=175)
+                                    predicate:value is not null
+                                    TableScan [TS_6] (rows=25 width=175)
+                                      Output:["key","value"]
+                  <-Reducer 2 [SIMPLE_EDGE] llap
+                    SHUFFLE [RS_22]
                       PartitionCols:_col2
-                      Merge Join Operator [MERGEJOIN_84] (rows=21 width=177)
-                        
Conds:RS_108._col1=RS_96._col1(Inner),Output:["_col1","_col2"]
-                      <-Map 9 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_96]
-                          PartitionCols:_col1
-                          Select Operator [SEL_94] (rows=25 width=175)
+                      Merge Join Operator [MERGEJOIN_80] (rows=39 width=175)
+                        
Conds:RS_86._col0=RS_90._col0(Inner),Output:["_col1","_col2"]
+                      <-Map 1 [SIMPLE_EDGE] vectorized, llap
+                        SHUFFLE [RS_86]
+                          PartitionCols:_col0
+                          Select Operator [SEL_85] (rows=500 width=87)
+                            Output:["_col0"]
+                            Filter Operator [FIL_84] (rows=500 width=87)
+                              predicate:key is not null
+                              TableScan [TS_0] (rows=500 width=87)
+                                
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"]
+                      <-Map 8 [SIMPLE_EDGE] vectorized, llap
+                        SHUFFLE [RS_90]
+                          PartitionCols:_col0
+                          Select Operator [SEL_89] (rows=25 width=175)
                             Output:["_col0","_col1"]
-                            Filter Operator [FIL_93] (rows=25 width=175)
+                            Filter Operator [FIL_88] (rows=25 width=175)
                               predicate:(key is not null and value is not null)
-                              TableScan [TS_13] (rows=25 width=175)
+                              TableScan [TS_3] (rows=25 width=175)
                                 
default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
-                      <-Reducer 15 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_108]
-                          PartitionCols:_col1
-                          Select Operator [SEL_107] (rows=262 width=178)
-                            Output:["_col1"]
-                            Group By Operator [GBY_106] (rows=262 width=178)
-                              Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                            <-Union 14 [SIMPLE_EDGE]
-                              <-Map 13 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_115]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_114] (rows=262 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_113] (rows=25 
width=175)
-                                      Output:["_col0","_col1"]
-                                      Filter Operator [FIL_112] (rows=25 
width=175)
-                                        predicate:value is not null
-                                        TableScan [TS_26] (rows=25 width=175)
-                                          Output:["key","value"]
-                              <-Map 16 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_119]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_118] (rows=262 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_117] (rows=500 
width=178)
-                                      Output:["_col0","_col1"]
-                                      Filter Operator [FIL_116] (rows=500 
width=178)
-                                        predicate:value is not null
-                                        TableScan [TS_29] (rows=500 width=178)
-                                          Output:["key","value"]
-          <-Reducer 5 [CONTAINS] llap
+          <-Reducer 7 [CONTAINS] llap
             Reduce Output Operator [RS_56]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_55] (rows=28 width=177)
+              Group By Operator [GBY_55] (rows=33 width=177)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_25] (rows=33 width=177)
+                Select Operator [SEL_51] (rows=33 width=177)
                   Output:["_col0","_col1"]
                   Merge Join Operator [MERGEJOIN_83] (rows=33 width=177)
-                    
Conds:RS_22._col2=RS_99._col0(Inner),Output:["_col1","_col2"]
-                  <-Map 12 [SIMPLE_EDGE] vectorized, llap
+                    
Conds:RS_48._col2=RS_99._col1(Inner),Output:["_col1","_col4"]
+                  <-Reducer 15 [SIMPLE_EDGE] vectorized, llap
                     SHUFFLE [RS_99]
-                      PartitionCols:_col0
-                      Select Operator [SEL_98] (rows=500 width=87)
-                        Output:["_col0"]
-                        Filter Operator [FIL_97] (rows=500 width=87)
-                          predicate:key is not null
-                          TableScan [TS_16] (rows=500 width=87)
-                            
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"]
-                  <-Reducer 4 [SIMPLE_EDGE] llap
-                    SHUFFLE [RS_22]
+                      PartitionCols:_col1
+                      Select Operator [SEL_98] (rows=262 width=178)
+                        Output:["_col1"]
+                        Group By Operator [GBY_97] (rows=262 width=178)
+                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                        <-Union 14 [SIMPLE_EDGE]
+                          <-Map 13 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_111]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_110] (rows=262 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_109] (rows=25 width=175)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_108] (rows=25 width=175)
+                                    predicate:value is not null
+                                    TableScan [TS_32] (rows=25 width=175)
+                                      Output:["key","value"]
+                          <-Map 16 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_115]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_114] (rows=262 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_113] (rows=500 width=178)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_112] (rows=500 
width=178)
+                                    predicate:value is not null
+                                    TableScan [TS_35] (rows=500 width=178)
+                                      Output:["key","value"]
+                  <-Reducer 6 [SIMPLE_EDGE] llap
+                    SHUFFLE [RS_48]
                       PartitionCols:_col2
-                      Merge Join Operator [MERGEJOIN_82] (rows=21 width=177)
-                        
Conds:RS_92._col1=RS_95._col1(Inner),Output:["_col1","_col2"]
-                      <-Map 9 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_95]
-                          PartitionCols:_col1
-                           Please refer to the previous Select Operator 
[SEL_94]
-                      <-Reducer 3 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_92]
-                          PartitionCols:_col1
-                          Select Operator [SEL_91] (rows=262 width=178)
-                            Output:["_col1"]
-                            Group By Operator [GBY_90] (rows=262 width=178)
-                              Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                            <-Union 2 [SIMPLE_EDGE]
-                              <-Map 1 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_89]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_88] (rows=262 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_87] (rows=25 
width=175)
-                                      Output:["_col0","_col1"]
-                                      Filter Operator [FIL_86] (rows=25 
width=175)
-                                        predicate:value is not null
-                                        TableScan [TS_0] (rows=25 width=175)
-                                          Output:["key","value"]
-                              <-Map 8 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_105]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_104] (rows=262 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_103] (rows=500 
width=178)
-                                      Output:["_col0","_col1"]
-                                      Filter Operator [FIL_102] (rows=500 
width=178)
-                                        predicate:value is not null
-                                        TableScan [TS_3] (rows=500 width=178)
-                                          Output:["key","value"]
+                      Merge Join Operator [MERGEJOIN_81] (rows=39 width=175)
+                        
Conds:RS_87._col0=RS_91._col0(Inner),Output:["_col1","_col2"]
+                      <-Map 1 [SIMPLE_EDGE] vectorized, llap
+                        SHUFFLE [RS_87]
+                          PartitionCols:_col0
+                           Please refer to the previous Select Operator 
[SEL_85]
+                      <-Map 8 [SIMPLE_EDGE] vectorized, llap
+                        SHUFFLE [RS_91]
+                          PartitionCols:_col0
+                           Please refer to the previous Select Operator 
[SEL_89]
 
 PREHOOK: query: explain
 SELECT x.key, y.value
@@ -613,281 +608,266 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Map 1 <- Union 2 (CONTAINS)
-Map 10 <- Union 2 (CONTAINS)
-Map 17 <- Union 18 (CONTAINS)
-Map 22 <- Union 18 (CONTAINS)
-Map 23 <- Union 20 (CONTAINS)
-Map 25 <- Union 26 (CONTAINS)
-Map 32 <- Union 26 (CONTAINS)
-Map 33 <- Union 28 (CONTAINS)
-Map 34 <- Union 30 (CONTAINS)
-Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE)
-Reducer 13 <- Map 24 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Union 6 
(CONTAINS)
-Reducer 14 <- Map 11 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE)
-Reducer 15 <- Map 16 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 8 
(CONTAINS)
-Reducer 19 <- Union 18 (SIMPLE_EDGE), Union 20 (CONTAINS)
-Reducer 21 <- Union 20 (SIMPLE_EDGE)
+Map 12 <- Union 13 (CONTAINS)
+Map 15 <- Union 13 (CONTAINS)
+Map 16 <- Union 17 (CONTAINS)
+Map 21 <- Union 17 (CONTAINS)
+Map 22 <- Union 19 (CONTAINS)
+Map 23 <- Union 24 (CONTAINS)
+Map 30 <- Union 24 (CONTAINS)
+Map 31 <- Union 26 (CONTAINS)
+Map 32 <- Union 28 (CONTAINS)
+Reducer 10 <- Reducer 20 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE), Union 4 
(CONTAINS)
+Reducer 14 <- Union 13 (SIMPLE_EDGE)
+Reducer 18 <- Union 17 (SIMPLE_EDGE), Union 19 (CONTAINS)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE)
+Reducer 20 <- Union 19 (SIMPLE_EDGE)
+Reducer 25 <- Union 24 (SIMPLE_EDGE), Union 26 (CONTAINS)
 Reducer 27 <- Union 26 (SIMPLE_EDGE), Union 28 (CONTAINS)
-Reducer 29 <- Union 28 (SIMPLE_EDGE), Union 30 (CONTAINS)
-Reducer 3 <- Union 2 (SIMPLE_EDGE)
-Reducer 31 <- Union 30 (SIMPLE_EDGE)
-Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
-Reducer 5 <- Map 16 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
-Reducer 7 <- Union 6 (SIMPLE_EDGE), Union 8 (CONTAINS)
-Reducer 9 <- Union 8 (SIMPLE_EDGE)
+Reducer 29 <- Union 28 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE), Union 4 
(CONTAINS)
+Reducer 5 <- Union 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
+Reducer 7 <- Union 6 (SIMPLE_EDGE)
+Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE), Union 6 
(CONTAINS)
+Reducer 9 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
-      Reducer 9 vectorized, llap
-      File Output Operator [FS_191]
-        Group By Operator [GBY_190] (rows=48 width=177)
+      Reducer 7 vectorized, llap
+      File Output Operator [FS_180]
+        Group By Operator [GBY_179] (rows=47 width=177)
           Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-        <-Union 8 [SIMPLE_EDGE]
-          <-Reducer 15 [CONTAINS] llap
-            Reduce Output Operator [RS_119]
-              PartitionCols:_col0, _col1
-              Group By Operator [GBY_118] (rows=48 width=177)
-                Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_114] (rows=56 width=177)
-                  Output:["_col0","_col1"]
-                  Merge Join Operator [MERGEJOIN_170] (rows=56 width=177)
-                    
Conds:RS_111._col2=RS_186._col0(Inner),Output:["_col2","_col5"]
-                  <-Map 16 [SIMPLE_EDGE] vectorized, llap
-                    SHUFFLE [RS_186]
-                      PartitionCols:_col0
-                      Select Operator [SEL_184] (rows=500 width=178)
-                        Output:["_col0","_col1"]
-                        Filter Operator [FIL_183] (rows=500 width=178)
-                          predicate:key is not null
-                          TableScan [TS_16] (rows=500 width=178)
-                            
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
-                  <-Reducer 14 [SIMPLE_EDGE] llap
-                    SHUFFLE [RS_111]
-                      PartitionCols:_col2
-                      Merge Join Operator [MERGEJOIN_169] (rows=35 width=86)
-                        Conds:RS_204._col1=RS_182._col1(Inner),Output:["_col2"]
-                      <-Map 11 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_182]
-                          PartitionCols:_col1
-                          Select Operator [SEL_179] (rows=25 width=175)
-                            Output:["_col0","_col1"]
-                            Filter Operator [FIL_178] (rows=25 width=175)
-                              predicate:(key is not null and value is not null)
-                              TableScan [TS_13] (rows=25 width=175)
-                                
default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
-                      <-Reducer 31 [SIMPLE_EDGE] vectorized, llap
-                        SHUFFLE [RS_204]
-                          PartitionCols:_col1
-                          Select Operator [SEL_203] (rows=440 width=178)
-                            Output:["_col1"]
-                            Group By Operator [GBY_202] (rows=440 width=178)
-                              Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                            <-Union 30 [SIMPLE_EDGE]
-                              <-Map 34 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_244]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_243] (rows=440 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_242] (rows=500 
width=178)
-                                      Output:["_col0","_col1"]
-                                      Filter Operator [FIL_241] (rows=500 
width=178)
-                                        predicate:value is not null
-                                        TableScan [TS_92] (rows=500 width=178)
-                                          Output:["key","value"]
-                              <-Reducer 29 [CONTAINS] vectorized, llap
-                                Reduce Output Operator [RS_232]
-                                  PartitionCols:_col0, _col1
-                                  Group By Operator [GBY_231] (rows=440 
width=178)
-                                    Output:["_col0","_col1"],keys:_col1, _col0
-                                    Select Operator [SEL_230] (rows=381 
width=178)
-                                      Output:["_col0","_col1"]
-                                      Group By Operator [GBY_229] (rows=381 
width=178)
-                                        
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                                      <-Union 28 [SIMPLE_EDGE]
-                                        <-Map 33 [CONTAINS] vectorized, llap
-                                          Reduce Output Operator [RS_240]
-                                            PartitionCols:_col0, _col1
-                                            Group By Operator [GBY_239] 
(rows=381 width=178)
-                                              
Output:["_col0","_col1"],keys:_col1, _col0
-                                              Select Operator [SEL_238] 
(rows=500 width=178)
-                                                Output:["_col0","_col1"]
-                                                Filter Operator [FIL_237] 
(rows=500 width=178)
-                                                  predicate:value is not null
-                                                  TableScan [TS_82] (rows=500 
width=178)
-                                                    Output:["key","value"]
-                                        <-Reducer 27 [CONTAINS] vectorized, 
llap
-                                          Reduce Output Operator [RS_228]
-                                            PartitionCols:_col0, _col1
-                                            Group By Operator [GBY_227] 
(rows=381 width=178)
-                                              
Output:["_col0","_col1"],keys:_col1, _col0
-                                              Select Operator [SEL_226] 
(rows=262 width=178)
-                                                Output:["_col0","_col1"]
-                                                Group By Operator [GBY_225] 
(rows=262 width=178)
-                                                  
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                                                <-Union 26 [SIMPLE_EDGE]
-                                                  <-Map 25 [CONTAINS] 
vectorized, llap
-                                                    Reduce Output Operator 
[RS_224]
-                                                      PartitionCols:_col0, 
_col1
-                                                      Group By Operator 
[GBY_223] (rows=262 width=178)
-                                                        
Output:["_col0","_col1"],keys:_col1, _col0
-                                                        Select Operator 
[SEL_222] (rows=25 width=175)
-                                                          
Output:["_col0","_col1"]
-                                                          Filter Operator 
[FIL_221] (rows=25 width=175)
-                                                            predicate:value is 
not null
-                                                            TableScan [TS_69] 
(rows=25 width=175)
-                                                              
Output:["key","value"]
-                                                  <-Map 32 [CONTAINS] 
vectorized, llap
-                                                    Reduce Output Operator 
[RS_236]
-                                                      PartitionCols:_col0, 
_col1
-                                                      Group By Operator 
[GBY_235] (rows=262 width=178)
-                                                        
Output:["_col0","_col1"],keys:_col1, _col0
-                                                        Select Operator 
[SEL_234] (rows=500 width=178)
-                                                          
Output:["_col0","_col1"]
-                                                          Filter Operator 
[FIL_233] (rows=500 width=178)
-                                                            predicate:value is 
not null
-                                                            TableScan [TS_72] 
(rows=500 width=178)
-                                                              
Output:["key","value"]
-          <-Reducer 7 [CONTAINS] vectorized, llap
-            Reduce Output Operator [RS_189]
+        <-Union 6 [SIMPLE_EDGE]
+          <-Reducer 5 [CONTAINS] vectorized, llap
+            Reduce Output Operator [RS_178]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_188] (rows=48 width=177)
+              Group By Operator [GBY_177] (rows=47 width=177)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Group By Operator [GBY_187] (rows=40 width=177)
+                Group By Operator [GBY_176] (rows=40 width=177)
                   Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                <-Union 6 [SIMPLE_EDGE]
-                  <-Reducer 13 [CONTAINS] llap
+                <-Union 4 [SIMPLE_EDGE]
+                  <-Reducer 10 [CONTAINS] llap
                     Reduce Output Operator [RS_66]
                       PartitionCols:_col0, _col1
                       Group By Operator [GBY_65] (rows=40 width=177)
                         Output:["_col0","_col1"],keys:_col0, _col1
                         Select Operator [SEL_61] (rows=48 width=177)
                           Output:["_col0","_col1"]
-                          Merge Join Operator [MERGEJOIN_168] (rows=48 
width=177)
-                            
Conds:RS_58._col2=RS_201._col0(Inner),Output:["_col2","_col5"]
-                          <-Map 24 [SIMPLE_EDGE] vectorized, llap
-                            SHUFFLE [RS_201]
-                              PartitionCols:_col0
-                              Select Operator [SEL_200] (rows=500 width=178)
-                                Output:["_col0","_col1"]
-                                Filter Operator [FIL_199] (rows=500 width=178)
-                                  predicate:key is not null
-                                  TableScan [TS_52] (rows=500 width=178)
-                                    
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
-                          <-Reducer 12 [SIMPLE_EDGE] llap
+                          Merge Join Operator [MERGEJOIN_163] (rows=48 
width=177)
+                            
Conds:RS_58._col3=RS_186._col1(Inner),Output:["_col1","_col2"]
+                          <-Reducer 20 [SIMPLE_EDGE] vectorized, llap
+                            SHUFFLE [RS_186]
+                              PartitionCols:_col1
+                              Select Operator [SEL_185] (rows=381 width=178)
+                                Output:["_col1"]
+                                Group By Operator [GBY_184] (rows=381 
width=178)
+                                  Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
+                                <-Union 19 [SIMPLE_EDGE]
+                                  <-Map 22 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_210]
+                                      PartitionCols:_col0, _col1
+                                      Group By Operator [GBY_209] (rows=381 
width=178)
+                                        Output:["_col0","_col1"],keys:_col1, 
_col0
+                                        Select Operator [SEL_208] (rows=500 
width=178)
+                                          Output:["_col0","_col1"]
+                                          Filter Operator [FIL_207] (rows=500 
width=178)
+                                            predicate:value is not null
+                                            TableScan [TS_45] (rows=500 
width=178)
+                                              Output:["key","value"]
+                                  <-Reducer 18 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_202]
+                                      PartitionCols:_col0, _col1
+                                      Group By Operator [GBY_201] (rows=381 
width=178)
+                                        Output:["_col0","_col1"],keys:_col1, 
_col0
+                                        Select Operator [SEL_200] (rows=262 
width=178)
+                                          Output:["_col0","_col1"]
+                                          Group By Operator [GBY_199] 
(rows=262 width=178)
+                                            
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                                          <-Union 17 [SIMPLE_EDGE]
+                                            <-Map 16 [CONTAINS] vectorized, 
llap
+                                              Reduce Output Operator [RS_198]
+                                                PartitionCols:_col0, _col1
+                                                Group By Operator [GBY_197] 
(rows=262 width=178)
+                                                  
Output:["_col0","_col1"],keys:_col1, _col0
+                                                  Select Operator [SEL_196] 
(rows=25 width=175)
+                                                    Output:["_col0","_col1"]
+                                                    Filter Operator [FIL_195] 
(rows=25 width=175)
+                                                      predicate:value is not 
null
+                                                      TableScan [TS_32] 
(rows=25 width=175)
+                                                        Output:["key","value"]
+                                            <-Map 21 [CONTAINS] vectorized, 
llap
+                                              Reduce Output Operator [RS_206]
+                                                PartitionCols:_col0, _col1
+                                                Group By Operator [GBY_205] 
(rows=262 width=178)
+                                                  
Output:["_col0","_col1"],keys:_col1, _col0
+                                                  Select Operator [SEL_204] 
(rows=500 width=178)
+                                                    Output:["_col0","_col1"]
+                                                    Filter Operator [FIL_203] 
(rows=500 width=178)
+                                                      predicate:value is not 
null
+                                                      TableScan [TS_35] 
(rows=500 width=178)
+                                                        Output:["key","value"]
+                          <-Reducer 9 [SIMPLE_EDGE] llap
                             SHUFFLE [RS_58]
-                              PartitionCols:_col2
-                              Merge Join Operator [MERGEJOIN_167] (rows=30 
width=86)
-                                
Conds:RS_198._col1=RS_181._col1(Inner),Output:["_col2"]
+                              PartitionCols:_col3
+                              Merge Join Operator [MERGEJOIN_160] (rows=39 
width=266)
+                                
Conds:RS_168._col0=RS_172._col0(Inner),Output:["_col1","_col2","_col3"]
+                              <-Map 1 [SIMPLE_EDGE] vectorized, llap
+                                SHUFFLE [RS_168]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_166] (rows=500 
width=178)
+                                    Output:["_col0","_col1"]
+                                    Filter Operator [FIL_165] (rows=500 
width=178)
+                                      predicate:key is not null
+                                      TableScan [TS_0] (rows=500 width=178)
+                                        
default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
                               <-Map 11 [SIMPLE_EDGE] vectorized, llap
-                                SHUFFLE [RS_181]
-                                  PartitionCols:_col1
-                                   Please refer to the previous Select 
Operator [SEL_179]
-                              <-Reducer 21 [SIMPLE_EDGE] vectorized, llap
-                                SHUFFLE [RS_198]
-                                  PartitionCols:_col1
-                                  Select Operator [SEL_197] (rows=381 
width=178)
-                                    Output:["_col1"]
-                                    Group By Operator [GBY_196] (rows=381 
width=178)
-                                      Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                                    <-Union 20 [SIMPLE_EDGE]
-                                      <-Map 23 [CONTAINS] vectorized, llap
-                                        Reduce Output Operator [RS_220]
-                                          PartitionCols:_col0, _col1
-                                          Group By Operator [GBY_219] 
(rows=381 width=178)
-                                            
Output:["_col0","_col1"],keys:_col1, _col0
-                                            Select Operator [SEL_218] 
(rows=500 width=178)
-                                              Output:["_col0","_col1"]
-                                              Filter Operator [FIL_217] 
(rows=500 width=178)
-                                                predicate:value is not null
-                                                TableScan [TS_39] (rows=500 
width=178)
-                                                  Output:["key","value"]
-                                      <-Reducer 19 [CONTAINS] vectorized, llap
-                                        Reduce Output Operator [RS_212]
-                                          PartitionCols:_col0, _col1
-                                          Group By Operator [GBY_211] 
(rows=381 width=178)
-                                            
Output:["_col0","_col1"],keys:_col1, _col0
-                                            Select Operator [SEL_210] 
(rows=262 width=178)
-                                              Output:["_col0","_col1"]
-                                              Group By Operator [GBY_209] 
(rows=262 width=178)
-                                                
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                                              <-Union 18 [SIMPLE_EDGE]
-                                                <-Map 17 [CONTAINS] 
vectorized, llap
-                                                  Reduce Output Operator 
[RS_208]
-                                                    PartitionCols:_col0, _col1
-                                                    Group By Operator 
[GBY_207] (rows=262 width=178)
-                                                      
Output:["_col0","_col1"],keys:_col1, _col0
-                                                      Select Operator 
[SEL_206] (rows=25 width=175)
-                                                        
Output:["_col0","_col1"]
-                                                        Filter Operator 
[FIL_205] (rows=25 width=175)
-                                                          predicate:value is 
not null
-                                                          TableScan [TS_26] 
(rows=25 width=175)
-                                                            
Output:["key","value"]
-                                                <-Map 22 [CONTAINS] 
vectorized, llap
-                                                  Reduce Output Operator 
[RS_216]
-                                                    PartitionCols:_col0, _col1
-                                                    Group By Operator 
[GBY_215] (rows=262 width=178)
-                                                      
Output:["_col0","_col1"],keys:_col1, _col0
-                                                      Select Operator 
[SEL_214] (rows=500 width=178)
-                                                        
Output:["_col0","_col1"]
-                                                        Filter Operator 
[FIL_213] (rows=500 width=178)
-                                                          predicate:value is 
not null
-                                                          TableScan [TS_29] 
(rows=500 width=178)
-                                                            
Output:["key","value"]
-                  <-Reducer 5 [CONTAINS] llap
+                                SHUFFLE [RS_172]
+                                  PartitionCols:_col0
+                                  Select Operator [SEL_170] (rows=25 width=175)
+                                    Output:["_col0","_col1"]
+                                    Filter Operator [FIL_169] (rows=25 
width=175)
+                                      predicate:(key is not null and value is 
not null)
+                                      TableScan [TS_3] (rows=25 width=175)
+                                        
default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"]
+                  <-Reducer 3 [CONTAINS] llap
                     Reduce Output Operator [RS_66]
                       PartitionCols:_col0, _col1
                       Group By Operator [GBY_65] (rows=40 width=177)
                         Output:["_col0","_col1"],keys:_col0, _col1
                         Select Operator [SEL_25] (rows=33 width=177)
                           Output:["_col0","_col1"]
-                          Merge Join Operator [MERGEJOIN_166] (rows=33 
width=177)
-                            
Conds:RS_22._col2=RS_185._col0(Inner),Output:["_col2","_col5"]
-                          <-Map 16 [SIMPLE_EDGE] vectorized, llap
-                            SHUFFLE [RS_185]
-                              PartitionCols:_col0
-                               Please refer to the previous Select Operator 
[SEL_184]
-                          <-Reducer 4 [SIMPLE_EDGE] llap
+                          Merge Join Operator [MERGEJOIN_162] (rows=33 
width=177)
+                            
Conds:RS_22._col3=RS_175._col1(Inner),Output:["_col1","_col2"]
+                          <-Reducer 2 [SIMPLE_EDGE] llap
                             SHUFFLE [RS_22]
-                              PartitionCols:_col2
-                              Merge Join Operator [MERGEJOIN_165] (rows=21 
width=86)
-                                
Conds:RS_177._col1=RS_180._col1(Inner),Output:["_col2"]
+                              PartitionCols:_col3
+                              Merge Join Operator [MERGEJOIN_159] (rows=39 
width=266)
+                                
Conds:RS_167._col0=RS_171._col0(Inner),Output:["_col1","_col2","_col3"]
+                              <-Map 1 [SIMPLE_EDGE] vectorized, llap
+                                SHUFFLE [RS_167]
+                                  PartitionCols:_col0
+                                   Please refer to the previous Select 
Operator [SEL_166]
                               <-Map 11 [SIMPLE_EDGE] vectorized, llap
-                                SHUFFLE [RS_180]
-                                  PartitionCols:_col1
-                                   Please refer to the previous Select 
Operator [SEL_179]
-                              <-Reducer 3 [SIMPLE_EDGE] vectorized, llap
-                                SHUFFLE [RS_177]
-                                  PartitionCols:_col1
-                                  Select Operator [SEL_176] (rows=262 
width=178)
-                                    Output:["_col1"]
-                                    Group By Operator [GBY_175] (rows=262 
width=178)
-                                      Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                                    <-Union 2 [SIMPLE_EDGE]
-                                      <-Map 1 [CONTAINS] vectorized, llap
-                                        Reduce Output Operator [RS_174]
-                                          PartitionCols:_col0, _col1
-                                          Group By Operator [GBY_173] 
(rows=262 width=178)
-                                            
Output:["_col0","_col1"],keys:_col1, _col0
-                                            Select Operator [SEL_172] (rows=25 
width=175)
-                                              Output:["_col0","_col1"]
-                                              Filter Operator [FIL_171] 
(rows=25 width=175)
-                                                predicate:value is not null
-                                                TableScan [TS_0] (rows=25 
width=175)
-                                                  Output:["key","value"]
-                                      <-Map 10 [CONTAINS] vectorized, llap
-                                        Reduce Output Operator [RS_195]
-                                          PartitionCols:_col0, _col1
-                                          Group By Operator [GBY_194] 
(rows=262 width=178)
-                                            
Output:["_col0","_col1"],keys:_col1, _col0
-                                            Select Operator [SEL_193] 
(rows=500 width=178)
-                                              Output:["_col0","_col1"]
-                                              Filter Operator [FIL_192] 
(rows=500 width=178)
-                                                predicate:value is not null
-                                                TableScan [TS_3] (rows=500 
width=178)
-                                                  Output:["key","value"]
+                                SHUFFLE [RS_171]
+                                  PartitionCols:_col0
+                                   Please refer to the previous Select 
Operator [SEL_170]
+                          <-Reducer 14 [SIMPLE_EDGE] vectorized, llap
+                            SHUFFLE [RS_175]
+                              PartitionCols:_col1
+                              Select Operator [SEL_174] (rows=262 width=178)
+                                Output:["_col1"]
+                                Group By Operator [GBY_173] (rows=262 
width=178)
+                                  Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
+                                <-Union 13 [SIMPLE_EDGE]
+                                  <-Map 12 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_190]
+                                      PartitionCols:_col0, _col1
+                                      Group By Operator [GBY_189] (rows=262 
width=178)
+                                        Output:["_col0","_col1"],keys:_col1, 
_col0
+                                        Select Operator [SEL_188] (rows=25 
width=175)
+                                          Output:["_col0","_col1"]
+                                          Filter Operator [FIL_187] (rows=25 
width=175)
+                                            predicate:value is not null
+                                            TableScan [TS_6] (rows=25 
width=175)
+                                              Output:["key","value"]
+                                  <-Map 15 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_194]
+                                      PartitionCols:_col0, _col1
+                                      Group By Operator [GBY_193] (rows=262 
width=178)
+                                        Output:["_col0","_col1"],keys:_col1, 
_col0
+                                        Select Operator [SEL_192] (rows=500 
width=178)
+                                          Output:["_col0","_col1"]
+                                          Filter Operator [FIL_191] (rows=500 
width=178)
+                                            predicate:value is not null
+                                            TableScan [TS_9] (rows=500 
width=178)
+                                              Output:["key","value"]
+          <-Reducer 8 [CONTAINS] llap
+            Reduce Output Operator [RS_119]
+              PartitionCols:_col0, _col1
+              Group By Operator [GBY_118] (rows=47 width=177)
+                Output:["_col0","_col1"],keys:_col0, _col1
+                Select Operator [SEL_114] (rows=55 width=177)
+                  Output:["_col0","_col1"]
+                  Merge Join Operator [MERGEJOIN_164] (rows=55 width=177)
+                    
Conds:RS_111._col3=RS_183._col1(Inner),Output:["_col1","_col2"]
+                  <-Reducer 2 [SIMPLE_EDGE] llap
+                    SHUFFLE [RS_111]
+                      PartitionCols:_col3
+                       Please refer to the previous Merge Join Operator 
[MERGEJOIN_159]
+                  <-Reducer 29 [SIMPLE_EDGE] vectorized, llap
+                    SHUFFLE [RS_183]
+                      PartitionCols:_col1
+                      Select Operator [SEL_182] (rows=440 width=178)
+                        Output:["_col1"]
+                        Group By Operator [GBY_181] (rows=440 width=178)
+                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                        <-Union 28 [SIMPLE_EDGE]
+                          <-Map 32 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_234]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_233] (rows=440 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_232] (rows=500 width=178)
+                                  Output:["_col0","_col1"]
+                                  Filter Operator [FIL_231] (rows=500 
width=178)
+                                    predicate:value is not null
+                                    TableScan [TS_98] (rows=500 width=178)
+                                      Output:["key","value"]
+                          <-Reducer 27 [CONTAINS] vectorized, llap
+                            Reduce Output Operator [RS_222]
+                              PartitionCols:_col0, _col1
+                              Group By Operator [GBY_221] (rows=440 width=178)
+                                Output:["_col0","_col1"],keys:_col1, _col0
+                                Select Operator [SEL_220] (rows=381 width=178)
+                                  Output:["_col0","_col1"]
+                                  Group By Operator [GBY_219] (rows=381 
width=178)
+                                    Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
+                                  <-Union 26 [SIMPLE_EDGE]
+                                    <-Map 31 [CONTAINS] vectorized, llap
+                                      Reduce Output Operator [RS_230]
+                                        PartitionCols:_col0, _col1
+                                        Group By Operator [GBY_229] (rows=381 
width=178)
+                                          Output:["_col0","_col1"],keys:_col1, 
_col0
+                                          Select Operator [SEL_228] (rows=500 
width=178)
+                                            Output:["_col0","_col1"]
+                                            Filter Operator [FIL_227] 
(rows=500 width=178)
+                                              predicate:value is not null
+                                              TableScan [TS_88] (rows=500 
width=178)
+                                                Output:["key","value"]
+                                    <-Reducer 25 [CONTAINS] vectorized, llap
+                                      Reduce Output Operator [RS_218]
+                                        PartitionCols:_col0, _col1
+                                        Group By Operator [GBY_217] (rows=381 
width=178)
+                                          Output:["_col0","_col1"],keys:_col1, 
_col0
+                                          Select Operator [SEL_216] (rows=262 
width=178)
+                                            Output:["_col0","_col1"]
+                                            Group By Operator [GBY_215] 
(rows=262 width=178)
+                                              
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                                            <-Union 24 [SIMPLE_EDGE]
+                                              <-Map 23 [CONTAINS] vectorized, 
llap
+                                                Reduce Output Operator [RS_214]
+                                                  PartitionCols:_col0, _col1
+                                                  Group By Operator [GBY_213] 
(rows=262 width=178)
+                                                    
Output:["_col0","_col1"],keys:_col1, _col0
+                                                    Select Operator [SEL_212] 
(rows=25 width=175)
+                                                      Output:["_col0","_col1"]
+                                                      Filter Operator 
[FIL_211] (rows=25 width=175)
+                                                        predicate:value is not 
null
+                                                        TableScan [TS_75] 
(rows=25 width=175)
+                                                          
Output:["key","value"]
+                                              <-Map 30 [CONTAINS] vectorized, 
llap
+                                                Reduce Output Operator [RS_226]
+                                                  PartitionCols:_col0, _col1
+                                                  Group By Operator [GBY_225] 
(rows=262 width=178)
+                                                    
Output:["_col0","_col1"],keys:_col1, _col0
+                                                    Select Operator [SEL_224] 
(rows=500 width=178)
+                                                      Output:["_col0","_col1"]
+                                                      Filter Operator 
[FIL_223] (rows=500 width=178)
+                                                        predicate:value is not 
null
+                                                        TableScan [TS_78] 
(rows=500 width=178)
+                                                          
Output:["key","value"]
 
 PREHOOK: query: EXPLAIN
 SELECT x.key, z.value, y.value
@@ -1133,135 +1113,132 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Map 1 <- Union 2 (CONTAINS)
-Map 12 <- Union 10 (CONTAINS)
-Map 6 <- Union 2 (CONTAINS)
-Map 9 <- Union 10 (CONTAINS)
-Reducer 11 <- Map 13 (BROADCAST_EDGE), Map 14 (BROADCAST_EDGE), Union 10 
(SIMPLE_EDGE), Union 4 (CONTAINS)
-Reducer 3 <- Map 7 (BROADCAST_EDGE), Map 8 (BROADCAST_EDGE), Union 2 
(SIMPLE_EDGE), Union 4 (CONTAINS)
-Reducer 5 <- Union 4 (SIMPLE_EDGE)
+Map 1 <- Map 2 (BROADCAST_EDGE)
+Map 10 <- Union 11 (CONTAINS)
+Map 13 <- Union 11 (CONTAINS)
+Map 3 <- Union 4 (CONTAINS)
+Map 8 <- Union 4 (CONTAINS)
+Map 9 <- Map 2 (BROADCAST_EDGE)
+Reducer 12 <- Map 9 (BROADCAST_EDGE), Union 11 (SIMPLE_EDGE), Union 6 
(CONTAINS)
+Reducer 5 <- Map 1 (BROADCAST_EDGE), Union 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
+Reducer 7 <- Union 6 (SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
-      Reducer 5 vectorized, llap
-      File Output Operator [FS_108]
-        Group By Operator [GBY_107] (rows=550 width=10)
+      Reducer 7 vectorized, llap
+      File Output Operator [FS_107]
+        Group By Operator [GBY_106] (rows=605 width=10)
           Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-        <-Union 4 [SIMPLE_EDGE]
-          <-Reducer 11 [CONTAINS] vectorized, llap
-            Reduce Output Operator [RS_129]
+        <-Union 6 [SIMPLE_EDGE]
+          <-Reducer 12 [CONTAINS] vectorized, llap
+            Reduce Output Operator [RS_125]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_128] (rows=1100 width=10)
+              Group By Operator [GBY_124] (rows=1210 width=10)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_127] (rows=550 width=10)
+                Select Operator [SEL_123] (rows=605 width=10)
                   Output:["_col0","_col1"]
-                  Map Join Operator [MAPJOIN_126] (rows=550 width=10)
-                    
Conds:MAPJOIN_125._col2=RS_122._col0(Inner),Output:["_col1","_col2"]
-                  <-Map 14 [BROADCAST_EDGE] vectorized, llap
-                    BROADCAST [RS_122]
-                      PartitionCols:_col0
-                      Select Operator [SEL_121] (rows=500 width=10)
-                        Output:["_col0"]
-                        Filter Operator [FIL_120] (rows=500 width=10)
-                          predicate:key is not null
-                          TableScan [TS_42] (rows=500 width=10)
-                            default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key"]
-                  <-Map Join Operator [MAPJOIN_125] (rows=288 width=10)
-                      
Conds:SEL_124._col1=RS_119._col1(Inner),Output:["_col1","_col2"]
-                    <-Map 13 [BROADCAST_EDGE] vectorized, llap
-                      BROADCAST [RS_119]
-                        PartitionCols:_col1
-                        Select Operator [SEL_118] (rows=25 width=7)
-                          Output:["_col0","_col1"]
-                          Filter Operator [FIL_117] (rows=25 width=7)
-                            predicate:(key is not null and value is not null)
-                            TableScan [TS_39] (rows=25 width=7)
-                              
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                    <-Select Operator [SEL_124] (rows=262 width=10)
-                        Output:["_col1"]
-                        Group By Operator [GBY_123] (rows=262 width=10)
-                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                        <-Union 10 [SIMPLE_EDGE]
-                          <-Map 12 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_133]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_132] (rows=525 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_131] (rows=500 width=10)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_130] (rows=500 width=10)
-                                    predicate:value is not null
-                                    TableScan [TS_29] (rows=500 width=10)
-                                      Output:["key","value"]
-                          <-Map 9 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_116]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_115] (rows=525 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_114] (rows=25 width=7)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_113] (rows=25 width=7)
-                                    predicate:value is not null
-                                    TableScan [TS_26] (rows=25 width=7)
-                                      Output:["key","value"]
-          <-Reducer 3 [CONTAINS] vectorized, llap
-            Reduce Output Operator [RS_106]
+                  Map Join Operator [MAPJOIN_122] (rows=605 width=10)
+                    
Conds:RS_119._col2=SEL_121._col1(Inner),Output:["_col1","_col4"]
+                  <-Map 9 [BROADCAST_EDGE] vectorized, llap
+                    BROADCAST [RS_119]
+                      PartitionCols:_col2
+                      Map Join Operator [MAPJOIN_118] (rows=550 width=10)
+                        
Conds:SEL_117._col0=RS_95._col0(Inner),Output:["_col1","_col2"]
+                      <-Map 2 [BROADCAST_EDGE] vectorized, llap
+                        BROADCAST [RS_95]
+                          PartitionCols:_col0
+                          Select Operator [SEL_93] (rows=25 width=7)
+                            Output:["_col0","_col1"]
+                            Filter Operator [FIL_92] (rows=25 width=7)
+                              predicate:(key is not null and value is not null)
+                              TableScan [TS_3] (rows=25 width=7)
+                                
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
+                      <-Select Operator [SEL_117] (rows=500 width=10)
+                          Output:["_col0"]
+                          Filter Operator [FIL_116] (rows=500 width=10)
+                            predicate:key is not null
+                            TableScan [TS_26] (rows=500 width=10)
+                              
default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key"]
+                  <-Select Operator [SEL_121] (rows=262 width=10)
+                      Output:["_col1"]
+                      Group By Operator [GBY_120] (rows=262 width=10)
+                        Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                      <-Union 11 [SIMPLE_EDGE]
+                        <-Map 10 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_115]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_114] (rows=525 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_113] (rows=25 width=7)
+                                Output:["_col0","_col1"]
+                                Filter Operator [FIL_112] (rows=25 width=7)
+                                  predicate:value is not null
+                                  TableScan [TS_32] (rows=25 width=7)
+                                    Output:["key","value"]
+                        <-Map 13 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_129]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_128] (rows=525 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_127] (rows=500 width=10)
+                                Output:["_col0","_col1"]
+                                Filter Operator [FIL_126] (rows=500 width=10)
+                                  predicate:value is not null
+                                  TableScan [TS_35] (rows=500 width=10)
+                                    Output:["key","value"]
+          <-Reducer 5 [CONTAINS] vectorized, llap
+            Reduce Output Operator [RS_105]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_105] (rows=1100 width=10)
+              Group By Operator [GBY_104] (rows=1210 width=10)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_104] (rows=550 width=10)
+                Select Operator [SEL_103] (rows=605 width=10)
                   Output:["_col0","_col1"]
-                  Map Join Operator [MAPJOIN_103] (rows=550 width=10)
-                    
Conds:MAPJOIN_102._col2=RS_99._col0(Inner),Output:["_col1","_col2"]
-                  <-Map 8 [BROADCAST_EDGE] vectorized, llap
+                  Map Join Operator [MAPJOIN_102] (rows=605 width=10)
+                    
Conds:RS_99._col2=SEL_101._col1(Inner),Output:["_col1","_col4"]
+                  <-Map 1 [BROADCAST_EDGE] vectorized, llap
                     BROADCAST [RS_99]
-                      PartitionCols:_col0
-                      Select Operator [SEL_98] (rows=500 width=10)
-                        Output:["_col0"]
-                        Filter Operator [FIL_97] (rows=500 width=10)
-                          predicate:key is not null
-                          TableScan [TS_16] (rows=500 width=10)
-                            default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key"]
-                  <-Map Join Operator [MAPJOIN_102] (rows=288 width=10)
-                      
Conds:SEL_101._col1=RS_96._col1(Inner),Output:["_col1","_col2"]
-                    <-Map 7 [BROADCAST_EDGE] vectorized, llap
-                      BROADCAST [RS_96]
-                        PartitionCols:_col1
-                        Select Operator [SEL_95] (rows=25 width=7)
-                          Output:["_col0","_col1"]
-                          Filter Operator [FIL_94] (rows=25 width=7)
-                            predicate:(key is not null and value is not null)
-                            TableScan [TS_13] (rows=25 width=7)
-                              
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                    <-Select Operator [SEL_101] (rows=262 width=10)
-                        Output:["_col1"]
-                        Group By Operator [GBY_100] (rows=262 width=10)
-                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                        <-Union 2 [SIMPLE_EDGE]
-                          <-Map 1 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_93]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_92] (rows=525 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_91] (rows=25 width=7)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_90] (rows=25 width=7)
-                                    predicate:value is not null
-                                    TableScan [TS_0] (rows=25 width=7)
-                                      Output:["key","value"]
-                          <-Map 6 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_112]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_111] (rows=525 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_110] (rows=500 width=10)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_109] (rows=500 width=10)
-                                    predicate:value is not null
-                                    TableScan [TS_3] (rows=500 width=10)
-                                      Output:["key","value"]
+                      PartitionCols:_col2
+                      Map Join Operator [MAPJOIN_98] (rows=550 width=10)
+                        
Conds:SEL_97._col0=RS_94._col0(Inner),Output:["_col1","_col2"]
+                      <-Map 2 [BROADCAST_EDGE] vectorized, llap
+                        BROADCAST [RS_94]
+                          PartitionCols:_col0
+                           Please refer to the previous Select Operator 
[SEL_93]
+                      <-Select Operator [SEL_97] (rows=500 width=10)
+                          Output:["_col0"]
+                          Filter Operator [FIL_96] (rows=500 width=10)
+                            predicate:key is not null
+                            TableScan [TS_0] (rows=500 width=10)
+                              
default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key"]
+                  <-Select Operator [SEL_101] (rows=262 width=10)
+                      Output:["_col1"]
+                      Group By Operator [GBY_100] (rows=262 width=10)
+                        Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                      <-Union 4 [SIMPLE_EDGE]
+                        <-Map 3 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_91]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_90] (rows=525 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_89] (rows=25 width=7)
+                                Output:["_col0","_col1"]
+                                Filter Operator [FIL_88] (rows=25 width=7)
+                                  predicate:value is not null
+                                  TableScan [TS_6] (rows=25 width=7)
+                                    Output:["key","value"]
+                        <-Map 8 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_111]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_110] (rows=525 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_109] (rows=500 width=10)
+                                Output:["_col0","_col1"]
+                                Filter Operator [FIL_108] (rows=500 width=10)
+                                  predicate:value is not null
+                                  TableScan [TS_9] (rows=500 width=10)
+                                    Output:["key","value"]
 
 PREHOOK: query: explain
 SELECT x.key, y.value
@@ -1292,262 +1269,253 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Map 1 <- Union 2 (CONTAINS)
-Map 11 <- Union 12 (CONTAINS)
-Map 16 <- Union 12 (CONTAINS)
-Map 17 <- Union 14 (CONTAINS)
-Map 20 <- Union 21 (CONTAINS)
-Map 27 <- Union 21 (CONTAINS)
-Map 28 <- Union 23 (CONTAINS)
-Map 29 <- Union 25 (CONTAINS)
-Map 8 <- Union 2 (CONTAINS)
-Reducer 13 <- Union 12 (SIMPLE_EDGE), Union 14 (CONTAINS)
-Reducer 15 <- Map 18 (BROADCAST_EDGE), Map 19 (BROADCAST_EDGE), Union 14 
(SIMPLE_EDGE), Union 4 (CONTAINS)
-Reducer 22 <- Union 21 (SIMPLE_EDGE), Union 23 (CONTAINS)
-Reducer 24 <- Union 23 (SIMPLE_EDGE), Union 25 (CONTAINS)
-Reducer 26 <- Map 10 (BROADCAST_EDGE), Map 9 (BROADCAST_EDGE), Union 25 
(SIMPLE_EDGE), Union 6 (CONTAINS)
-Reducer 3 <- Map 10 (BROADCAST_EDGE), Map 9 (BROADCAST_EDGE), Union 2 
(SIMPLE_EDGE), Union 4 (CONTAINS)
-Reducer 5 <- Union 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
-Reducer 7 <- Union 6 (SIMPLE_EDGE)
+Map 1 <- Map 2 (BROADCAST_EDGE)
+Map 10 <- Union 4 (CONTAINS)
+Map 11 <- Map 2 (BROADCAST_EDGE)
+Map 12 <- Union 13 (CONTAINS)
+Map 17 <- Union 13 (CONTAINS)
+Map 18 <- Union 15 (CONTAINS)
+Map 19 <- Union 20 (CONTAINS)
+Map 26 <- Union 20 (CONTAINS)
+Map 27 <- Union 22 (CONTAINS)
+Map 28 <- Union 24 (CONTAINS)
+Map 3 <- Union 4 (CONTAINS)
+Reducer 14 <- Union 13 (SIMPLE_EDGE), Union 15 (CONTAINS)
+Reducer 16 <- Map 11 (BROADCAST_EDGE), Union 15 (SIMPLE_EDGE), Union 6 
(CONTAINS)
+Reducer 21 <- Union 20 (SIMPLE_EDGE), Union 22 (CONTAINS)
+Reducer 23 <- Union 22 (SIMPLE_EDGE), Union 24 (CONTAINS)
+Reducer 25 <- Map 1 (BROADCAST_EDGE), Union 24 (SIMPLE_EDGE), Union 8 
(CONTAINS)
+Reducer 5 <- Map 1 (BROADCAST_EDGE), Union 4 (SIMPLE_EDGE), Union 6 (CONTAINS)
+Reducer 7 <- Union 6 (SIMPLE_EDGE), Union 8 (CONTAINS)
+Reducer 9 <- Union 8 (SIMPLE_EDGE)
 
 Stage-0
   Fetch Operator
     limit:-1
     Stage-1
-      Reducer 7 vectorized, llap
-      File Output Operator [FS_200]
-        Group By Operator [GBY_199] (rows=550 width=10)
+      Reducer 9 vectorized, llap
+      File Output Operator [FS_193]
+        Group By Operator [GBY_192] (rows=605 width=10)
           Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-        <-Union 6 [SIMPLE_EDGE]
-          <-Reducer 26 [CONTAINS] vectorized, llap
-            Reduce Output Operator [RS_252]
+        <-Union 8 [SIMPLE_EDGE]
+          <-Reducer 25 [CONTAINS] vectorized, llap
+            Reduce Output Operator [RS_241]
               PartitionCols:_col0, _col1
-              Group By Operator [GBY_251] (rows=1100 width=10)
+              Group By Operator [GBY_240] (rows=1210 width=10)
                 Output:["_col0","_col1"],keys:_col0, _col1
-                Select Operator [SEL_250] (rows=550 width=10)
+                Select Operator [SEL_239] (rows=605 width=10)
                   Output:["_col0","_col1"]
-                  Map Join Operator [MAPJOIN_249] (rows=550 width=10)
-                    
Conds:MAPJOIN_248._col2=RS_188._col0(Inner),Output:["_col2","_col5"]
-                  <-Map 10 [BROADCAST_EDGE] vectorized, llap
-                    BROADCAST [RS_188]
-                      PartitionCols:_col0
-                      Select Operator [SEL_186] (rows=500 width=10)
-                        Output:["_col0","_col1"]
-                        Filter Operator [FIL_185] (rows=500 width=10)
-                          predicate:key is not null
-                          TableScan [TS_16] (rows=500 width=10)
-                            
default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                  <-Map Join Operator [MAPJOIN_248] (rows=484 width=10)
-                      Conds:SEL_247._col1=RS_184._col1(Inner),Output:["_col2"]
-                    <-Map 9 [BROADCAST_EDGE] vectorized, llap
-                      BROADCAST [RS_184]
-                        PartitionCols:_col1
-                        Select Operator [SEL_182] (rows=25 width=7)
-                          Output:["_col0","_col1"]
-                          Filter Operator [FIL_181] (rows=25 width=7)
-                            predicate:(key is not null and value is not null)
-                            TableScan [TS_13] (rows=25 width=7)
-                              
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                    <-Select Operator [SEL_247] (rows=440 width=10)
-                        Output:["_col1"]
-                        Group By Operator [GBY_246] (rows=440 width=10)
-                          Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                        <-Union 25 [SIMPLE_EDGE]
-                          <-Map 29 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_264]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_263] (rows=881 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_262] (rows=500 width=10)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_261] (rows=500 width=10)
-                                    predicate:value is not null
-                                    TableScan [TS_92] (rows=500 width=10)
-                                      Output:["key","value"]
-                          <-Reducer 24 [CONTAINS] vectorized, llap
-                            Reduce Output Operator [RS_245]
-                              PartitionCols:_col0, _col1
-                              Group By Operator [GBY_244] (rows=881 width=10)
-                                Output:["_col0","_col1"],keys:_col1, _col0
-                                Select Operator [SEL_243] (rows=381 width=10)
-                                  Output:["_col0","_col1"]
-                                  Group By Operator [GBY_242] (rows=381 
width=10)
-                                    Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                                  <-Union 23 [SIMPLE_EDGE]
-                                    <-Map 28 [CONTAINS] vectorized, llap
-                                      Reduce Output Operator [RS_260]
-                                        PartitionCols:_col0, _col1
-                                        Group By Operator [GBY_259] (rows=762 
width=10)
-                                          Output:["_col0","_col1"],keys:_col1, 
_col0
-                                          Select Operator [SEL_258] (rows=500 
width=10)
-                                            Output:["_col0","_col1"]
-                                            Filter Operator [FIL_257] 
(rows=500 width=10)
-                                              predicate:value is not null
-                                              TableScan [TS_82] (rows=500 
width=10)
-                                                Output:["key","value"]
-                                    <-Reducer 22 [CONTAINS] vectorized, llap
-                                      Reduce Output Operator [RS_241]
-                                        PartitionCols:_col0, _col1
-                                        Group By Operator [GBY_240] (rows=762 
width=10)
-                                          Output:["_col0","_col1"],keys:_col1, 
_col0
-                                          Select Operator [SEL_239] (rows=262 
width=10)
-                                            Output:["_col0","_col1"]
-                                            Group By Operator [GBY_238] 
(rows=262 width=10)
-                                              
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                                            <-Union 21 [SIMPLE_EDGE]
-                                              <-Map 20 [CONTAINS] vectorized, 
llap
-                                                Reduce Output Operator [RS_237]
-                                                  PartitionCols:_col0, _col1
-                                                  Group By Operator [GBY_236] 
(rows=525 width=10)
-                                                    
Output:["_col0","_col1"],keys:_col1, _col0
-                                                    Select Operator [SEL_235] 
(rows=25 width=7)
-                                                      Output:["_col0","_col1"]
-                                                      Filter Operator 
[FIL_234] (rows=25 width=7)
-                                                        predicate:value is not 
null
-                                                        TableScan [TS_69] 
(rows=25 width=7)
-                                                          
Output:["key","value"]
-                                              <-Map 27 [CONTAINS] vectorized, 
llap
-                                                Reduce Output Operator [RS_256]
-                                                  PartitionCols:_col0, _col1
-                                                  Group By Operator [GBY_255] 
(rows=525 width=10)
-                                                    
Output:["_col0","_col1"],keys:_col1, _col0
-                                                    Select Operator [SEL_254] 
(rows=500 width=10)
-                                                      Output:["_col0","_col1"]
-                                                      Filter Operator 
[FIL_253] (rows=500 width=10)
-                                                        predicate:value is not 
null
-                                                        TableScan [TS_72] 
(rows=500 width=10)
-                                                          
Output:["key","value"]
-          <-Reducer 5 [CONTAINS] vectorized, llap
-            Reduce Output Operator [RS_198]
-              PartitionCols:_col0, _col1
-              Group By Operator [GBY_197] (rows=1100 width=10)
-                Output:["_col0","_col1"],keys:_col0, _col1
-                Group By Operator [GBY_196] (rows=550 width=10)
-                  Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                <-Union 4 [SIMPLE_EDGE]
-                  <-Reducer 15 [CONTAINS] vectorized, llap
-                    Reduce Output Operator [RS_225]
-                      PartitionCols:_col0, _col1
-                      Group By Operator [GBY_224] (rows=1100 width=10)
-                        Output:["_col0","_col1"],keys:_col0, _col1
-                        Select Operator [SEL_223] (rows=550 width=10)
+                  Map Join Operator [MAPJOIN_238] (rows=605 width=10)
+                    
Conds:RS_182._col3=SEL_237._col1(Inner),Output:["_col1","_col2"]
+                  <-Map 1 [BROADCAST_EDGE] vectorized, llap
+                    BROADCAST [RS_182]
+                      PartitionCols:_col3
+                      Map Join Operator [MAPJOIN_180] (rows=550 width=10)
+                        
Conds:SEL_179._col0=RS_176._col0(Inner),Output:["_col1","_col2","_col3"]
+                      <-Map 2 [BROADCAST_EDGE] vectorized, llap
+                        BROADCAST [RS_176]
+                          PartitionCols:_col0
+                          Select Operator [SEL_175] (rows=25 width=7)
+                            Output:["_col0","_col1"]
+                            Filter Operator [FIL_174] (rows=25 width=7)
+                              predicate:(key is not null and value is not null)
+                              TableScan [TS_3] (rows=25 width=7)
+                                
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
+                      <-Select Operator [SEL_179] (rows=500 width=10)
                           Output:["_col0","_col1"]
-                          Map Join Operator [MAPJOIN_222] (rows=550 width=10)
-                            
Conds:MAPJOIN_221._col2=RS_218._col0(Inner),Output:["_col2","_col5"]
-                          <-Map 19 [BROADCAST_EDGE] vectorized, llap
-                            BROADCAST [RS_218]
-                              PartitionCols:_col0
-                              Select Operator [SEL_217] (rows=500 width=10)
+                          Filter Operator [FIL_178] (rows=500 width=10)
+                            predicate:key is not null
+                            TableScan [TS_0] (rows=500 width=10)
+                              
default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
+                  <-Select Operator [SEL_237] (rows=440 width=10)
+                      Output:["_col1"]
+                      Group By Operator [GBY_236] (rows=440 width=10)
+                        Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                      <-Union 24 [SIMPLE_EDGE]
+                        <-Map 28 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_253]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_252] (rows=881 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_251] (rows=500 width=10)
                                 Output:["_col0","_col1"]
-                                Filter Operator [FIL_216] (rows=500 width=10)
-                                  predicate:key is not null
-                                  TableScan [TS_52] (rows=500 width=10)
-                                    
default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                          <-Map Join Operator [MAPJOIN_221] (rows=419 width=10)
-                              
Conds:SEL_220._col1=RS_215._col1(Inner),Output:["_col2"]
-                            <-Map 18 [BROADCAST_EDGE] vectorized, llap
-                              BROADCAST [RS_215]
-                                PartitionCols:_col1
-                                Select Operator [SEL_214] (rows=25 width=7)
-                                  Output:["_col0","_col1"]
-                                  Filter Operator [FIL_213] (rows=25 width=7)
-                                    predicate:(key is not null and value is 
not null)
-                                    TableScan [TS_49] (rows=25 width=7)
-                                      
default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"]
-                            <-Select Operator [SEL_220] (rows=381 width=10)
-                                Output:["_col1"]
-                                Group By Operator [GBY_219] (rows=381 width=10)
+                                Filter Operator [FIL_250] (rows=500 width=10)
+                                  predicate:value is not null
+                                  TableScan [TS_98] (rows=500 width=10)
+                                    Output:["key","value"]
+                        <-Reducer 23 [CONTAINS] vectorized, llap
+                          Reduce Output Operator [RS_235]
+                            PartitionCols:_col0, _col1
+                            Group By Operator [GBY_234] (rows=881 width=10)
+                              Output:["_col0","_col1"],keys:_col1, _col0
+                              Select Operator [SEL_233] (rows=381 width=10)
+                                Output:["_col0","_col1"]
+                                Group By Operator [GBY_232] (rows=381 width=10)
                                   Output:["_col0","_col1"],keys:KEY._col0, 
KEY._col1
-                                <-Union 14 [SIMPLE_EDGE]
-                                  <-Map 17 [CONTAINS] vectorized, llap
-                                    Reduce Output Operator [RS_233]
+                                <-Union 22 [SIMPLE_EDGE]
+                                  <-Map 27 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_249]
                                       PartitionCols:_col0, _col1
-                                      Group By Operator [GBY_232] (rows=762 
width=10)
+                                      Group By Operator [GBY_248] (rows=762 
width=10)
                                         Output:["_col0","_col1"],keys:_col1, 
_col0
-                                        Select Operator [SEL_231] (rows=500 
width=10)
+                                        Select Operator [SEL_247] (rows=500 
width=10)
                                           Output:["_col0","_col1"]
-                                          Filter Operator [FIL_230] (rows=500 
width=10)
+                                          Filter Operator [FIL_246] (rows=500 
width=10)
                                             predicate:value is not null
-                                            TableScan [TS_39] (rows=500 
width=10)
+                                            TableScan [TS_88] (rows=500 
width=10)
                                               Output:["key","value"]
-                                  <-Reducer 13 [CONTAINS] vectorized, llap
-                                    Reduce Output Operator [RS_212]
+                                  <-Reducer 21 [CONTAINS] vectorized, llap
+                                    Reduce Output Operator [RS_231]
                                       PartitionCols:_col0, _col1
-                                      Group By Operator [GBY_211] (rows=762 
width=10)
+                                      Group By Operator [GBY_230] (rows=762 
width=10)
                                         Output:["_col0","_col1"],keys:_col1, 
_col0
-                                        Select Operator [SEL_210] (rows=262 
width=10)
+                                        Select Operator [SEL_229] (rows=262 
width=10)
                                           Output:["_col0","_col1"]
-                                          Group By Operator [GBY_209] 
(rows=262 width=10)
+                                          Group By Operator [GBY_228] 
(rows=262 width=10)
                                             
Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                                          <-Union 12 [SIMPLE_EDGE]
-                                            <-Map 11 [CONTAINS] vectorized, 
llap
-                                              Reduce Output Operator [RS_208]
+                                          <-Union 20 [SIMPLE_EDGE]
+                                            <-Map 19 [CONTAINS] vectorized, 
llap
+                                              Reduce Output Operator [RS_227]
                                                 PartitionCols:_col0, _col1
-                                                Group By Operator [GBY_207] 
(rows=525 width=10)
+                                                Group By Operator [GBY_226] 
(rows=525 width=10)
                                                   
Output:["_col0","_col1"],keys:_col1, _col0
-                                                  Select Operator [SEL_206] 
(rows=25 width=7)
+                                                  Select Operator [SEL_225] 
(rows=25 width=7)
                                                     Output:["_col0","_col1"]
-                                                    Filter Operator [FIL_205] 
(rows=25 width=7)
+                                                    Filter Operator [FIL_224] 
(rows=25 width=7)
                                                       predicate:value is not 
null
-                                                      TableScan [TS_26] 
(rows=25 width=7)
+                                                      TableScan [TS_75] 
(rows=25 width=7)
                                                         Output:["key","value"]
-                                            <-Map 16 [CONTAINS] vectorized, 
llap
-                                              Reduce Output Operator [RS_229]
+                                            <-Map 26 [CONTAINS] vectorized, 
llap
+                                              Reduce Output Operator [RS_245]
                                                 PartitionCols:_col0, _col1
-                                                Group By Operator [GBY_228] 
(rows=525 width=10)
+                                                Group By Operator [GBY_244] 
(rows=525 width=10)
                                                   
Output:["_col0","_col1"],keys:_col1, _col0
-                                                  Select Operator [SEL_227] 
(rows=500 width=10)
+                                                  Select Operator [SEL_243] 
(rows=500 width=10)
                                                     Output:["_col0","_col1"]
-                                                    Filter Operator [FIL_226] 
(rows=500 width=10)
+                                                    Filter Operator [FIL_242] 
(rows=500 width=10)
                                                       predicate:value is not 
null
-                                                      T

<TRUNCATED>

Reply via email to