You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by gu...@apache.org on 2014/06/23 23:03:31 UTC

svn commit: r1604935 [26/40] - in /hive/trunk: hbase-handler/src/test/results/positive/ ql/src/java/org/apache/hadoop/hive/ql/optimizer/ ql/src/java/org/apache/hadoop/hive/ql/parse/ ql/src/test/results/clientnegative/ ql/src/test/results/clientpositive...

Modified: hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out?rev=1604935&r1=1604934&r2=1604935&view=diff
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out (original)
+++ hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out Mon Jun 23 21:03:24 2014
@@ -120,29 +120,35 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: int)
-                  Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: int)
+                    Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -151,11 +157,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -170,15 +176,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -222,29 +228,35 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: int)
-                  Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: int)
+                    Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -253,11 +265,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -272,15 +284,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -326,29 +338,35 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
+            Filter Operator
+              predicate: key is not null (type: boolean)
               Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
                 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: int)
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
                   Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: int)
+                    Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -357,11 +375,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -376,15 +394,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -423,31 +441,34 @@ STAGE PLANS:
             alias: b
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: (key < 15) (type: boolean)
-              Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+              predicate: ((key < 15) and key is not null) (type: boolean)
+              Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
               Select Operator
                 expressions: key (type: int)
                 outputColumnNames: key
-                Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
                 Group By Operator
                   keys: key (type: int), key (type: int)
                   mode: hash
                   outputColumnNames: _col0, _col1
-                  Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                  Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col1 (type: int)
                     sort order: +
                     Map-reduce partition columns: _col1 (type: int)
-                    Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                    Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -456,11 +477,11 @@ STAGE PLANS:
             0 {VALUE._col0}
             1 
           outputColumnNames: _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col1 (type: string)
             outputColumnNames: _col0
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -475,15 +496,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: string)
               sort order: +
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: string)
           outputColumnNames: _col0
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -533,31 +554,34 @@ STAGE PLANS:
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: (value < 'val_10') (type: boolean)
-              Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
+              predicate: ((value < 'val_10') and key is not null) (type: boolean)
+              Statistics: Num rows: 2 Data size: 15 Basic stats: COMPLETE Column stats: NONE
               Select Operator
                 expressions: key (type: int), value (type: string)
                 outputColumnNames: key, value
-                Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 2 Data size: 15 Basic stats: COMPLETE Column stats: NONE
                 Group By Operator
                   keys: key (type: int), value (type: string)
                   mode: hash
                   outputColumnNames: _col0, _col1
-                  Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
+                  Statistics: Num rows: 2 Data size: 15 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
                     sort order: +
                     Map-reduce partition columns: _col0 (type: int)
-                    Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
+                    Statistics: Num rows: 2 Data size: 15 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -566,11 +590,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -585,15 +609,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -634,32 +658,35 @@ STAGE PLANS:
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
           TableScan
             alias: t3
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: (key > 5) (type: boolean)
-              Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+              predicate: ((key > 5) and key is not null) (type: boolean)
+              Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
               Select Operator
                 expressions: key (type: int)
                 outputColumnNames: _col0
-                Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
                 Group By Operator
                   keys: _col0 (type: int)
                   mode: hash
                   outputColumnNames: _col0
-                  Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                  Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
                     sort order: +
                     Map-reduce partition columns: _col0 (type: int)
-                    Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                    Statistics: Num rows: 4 Data size: 29 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -668,11 +695,11 @@ STAGE PLANS:
             0 {VALUE._col0}
             1 
           outputColumnNames: _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col1 (type: string)
             outputColumnNames: _col0
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -687,15 +714,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: string)
               sort order: +
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: string)
           outputColumnNames: _col0
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -737,7 +764,7 @@ STAGE PLANS:
             alias: t2
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: ((key > 5) and (value <= 'val_20')) (type: boolean)
+              predicate: (((key > 5) and (value <= 'val_20')) and key is not null) (type: boolean)
               Statistics: Num rows: 1 Data size: 7 Basic stats: COMPLETE Column stats: NONE
               Select Operator
                 expressions: key (type: int), value (type: string)
@@ -756,12 +783,15 @@ STAGE PLANS:
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -770,11 +800,11 @@ STAGE PLANS:
             0 {VALUE._col0}
             1 
           outputColumnNames: _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col1 (type: string)
             outputColumnNames: _col0
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -789,15 +819,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: string)
               sort order: +
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: string)
           outputColumnNames: _col0
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -836,31 +866,34 @@ STAGE PLANS:
             alias: t1
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: (key > 2) (type: boolean)
-              Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+              predicate: ((key > 2) and key is not null) (type: boolean)
+              Statistics: Num rows: 2 Data size: 14 Basic stats: COMPLETE Column stats: NONE
               Select Operator
                 expressions: key (type: int)
                 outputColumnNames: _col0
-                Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 2 Data size: 14 Basic stats: COMPLETE Column stats: NONE
                 Group By Operator
                   keys: _col0 (type: int)
                   mode: hash
                   outputColumnNames: _col0
-                  Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                  Statistics: Num rows: 2 Data size: 14 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
                     sort order: +
                     Map-reduce partition columns: _col0 (type: int)
-                    Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                    Statistics: Num rows: 2 Data size: 14 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -869,11 +902,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -888,15 +921,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -944,22 +977,25 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 5 Data size: 35 Basic stats: COMPLETE Column stats: NONE
-                HashTable Sink Operator
-                  condition expressions:
-                    0 {key}
-                    1 
-                  keys:
-                    0 key (type: int)
-                    1 _col0 (type: int)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                  HashTable Sink Operator
+                    condition expressions:
+                      0 {key}
+                      1 
+                    keys:
+                      0 key (type: int)
+                      1 _col0 (type: int)
 
   Stage: Stage-1
     Map Reduce
@@ -967,35 +1003,38 @@ STAGE PLANS:
           TableScan
             alias: a
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-            Map Join Operator
-              condition map:
-                   Left Semi Join 0 to 1
-              condition expressions:
-                0 {key}
-                1 
-              keys:
-                0 key (type: int)
-                1 _col0 (type: int)
-              outputColumnNames: _col0
-              Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
-              Select Operator
-                expressions: _col0 (type: int)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+              Map Join Operator
+                condition map:
+                     Left Semi Join 0 to 1
+                condition expressions:
+                  0 {key}
+                  1 
+                keys:
+                  0 key (type: int)
+                  1 _col0 (type: int)
                 outputColumnNames: _col0
-                Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
+                Select Operator
+                  expressions: _col0 (type: int)
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
       Local Work:
         Map Reduce Local Work
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int)
           outputColumnNames: _col0
-          Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -1052,29 +1091,35 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: (2 * _col0) (type: int)
-                  sort order: +
-                  Map-reduce partition columns: (2 * _col0) (type: int)
-                  Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: (2 * key) is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: (2 * _col0) (type: int)
+                    sort order: +
+                    Map-reduce partition columns: (2 * _col0) (type: int)
+                    Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -1083,11 +1128,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -1102,15 +1147,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 12 Data size: 86 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 47 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -1152,38 +1197,47 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
           TableScan
             alias: c
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: int)
-                  Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: int)
+                    Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -1194,11 +1248,11 @@ STAGE PLANS:
             1 {KEY.reducesinkkey0} {VALUE._col0}
             2 
           outputColumnNames: _col0, _col1, _col4, _col5
-          Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string), _col4 (type: int), _col5 (type: string)
             outputColumnNames: _col0, _col1, _col2, _col3
-            Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -1213,16 +1267,16 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
               value expressions: _col2 (type: int), _col3 (type: string)
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string), VALUE._col0 (type: int), VALUE._col1 (type: string)
           outputColumnNames: _col0, _col1, _col2, _col3
-          Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -1276,28 +1330,34 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int), value (type: string)
-              outputColumnNames: key, value
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int), value (type: string)
-                mode: hash
-                outputColumnNames: _col0, _col1
-                Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int), _col1 (type: string)
-                  sort order: ++
-                  Map-reduce partition columns: _col0 (type: int), _col1 (type: string)
-                  Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: (key is not null and value is not null) (type: boolean)
+              Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int), value (type: string)
+                outputColumnNames: key, value
+                Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int), value (type: string)
+                  mode: hash
+                  outputColumnNames: _col0, _col1
+                  Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int), _col1 (type: string)
+                    sort order: ++
+                    Map-reduce partition columns: _col0 (type: int), _col1 (type: string)
+                    Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int), value (type: string)
-              sort order: ++
-              Map-reduce partition columns: key (type: int), value (type: string)
-              Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: (key is not null and value is not null) (type: boolean)
+              Statistics: Num rows: 6 Data size: 44 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int), value (type: string)
+                sort order: ++
+                Map-reduce partition columns: key (type: int), value (type: string)
+                Statistics: Num rows: 6 Data size: 44 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -1306,11 +1366,11 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {KEY.reducesinkkey1}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int), _col1 (type: string)
             outputColumnNames: _col0, _col1
-            Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -1325,15 +1385,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int), _col1 (type: string)
               sort order: ++
-              Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: string)
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -1393,46 +1453,52 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 79 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 5 Data size: 35 Basic stats: COMPLETE Column stats: NONE
-                HashTable Sink Operator
-                  condition expressions:
-                    0 {key}
-                    1 
-                    2 
-                  keys:
-                    0 key (type: int)
-                    1 _col0 (type: int)
-                    2 _col0 (type: int)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 43 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 3 Data size: 21 Basic stats: COMPLETE Column stats: NONE
+                  HashTable Sink Operator
+                    condition expressions:
+                      0 {key}
+                      1 
+                      2 
+                    keys:
+                      0 key (type: int)
+                      1 _col0 (type: int)
+                      2 _col0 (type: int)
         c 
           TableScan
             alias: c
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE
-                HashTable Sink Operator
-                  condition expressions:
-                    0 {key}
-                    1 
-                    2 
-                  keys:
-                    0 key (type: int)
-                    1 _col0 (type: int)
-                    2 _col0 (type: int)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
+                  HashTable Sink Operator
+                    condition expressions:
+                      0 {key}
+                      1 
+                      2 
+                    keys:
+                      0 key (type: int)
+                      1 _col0 (type: int)
+                      2 _col0 (type: int)
 
   Stage: Stage-1
     Map Reduce
@@ -1440,38 +1506,41 @@ STAGE PLANS:
           TableScan
             alias: a
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-            Map Join Operator
-              condition map:
-                   Left Semi Join 0 to 1
-                   Left Semi Join 0 to 2
-              condition expressions:
-                0 {key}
-                1 
-                2 
-              keys:
-                0 key (type: int)
-                1 _col0 (type: int)
-                2 _col0 (type: int)
-              outputColumnNames: _col0
-              Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
-              Select Operator
-                expressions: _col0 (type: int)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+              Map Join Operator
+                condition map:
+                     Left Semi Join 0 to 1
+                     Left Semi Join 0 to 2
+                condition expressions:
+                  0 {key}
+                  1 
+                  2 
+                keys:
+                  0 key (type: int)
+                  1 _col0 (type: int)
+                  2 _col0 (type: int)
                 outputColumnNames: _col0
-                Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
+                Select Operator
+                  expressions: _col0 (type: int)
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
       Local Work:
         Map Reduce Local Work
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int)
           outputColumnNames: _col0
-          Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 48 Data size: 358 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 24 Data size: 178 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -2354,29 +2423,35 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: key (type: int)
-              outputColumnNames: key
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: key (type: int)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: int)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: int)
-                  Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: key (type: int)
+                outputColumnNames: key
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: key (type: int)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: int)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: int)
+                    Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-            Reduce Output Operator
-              key expressions: key (type: int)
-              sort order: +
-              Map-reduce partition columns: key (type: int)
-              Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
-              value expressions: value (type: string)
+            Filter Operator
+              predicate: key is not null (type: boolean)
+              Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+              Reduce Output Operator
+                key expressions: key (type: int)
+                sort order: +
+                Map-reduce partition columns: key (type: int)
+                Statistics: Num rows: 11 Data size: 81 Basic stats: COMPLETE Column stats: NONE
+                value expressions: value (type: string)
       Reduce Operator Tree:
         Join Operator
           condition map:
@@ -2385,7 +2460,7 @@ STAGE PLANS:
             0 {KEY.reducesinkkey0} {VALUE._col0}
             1 
           outputColumnNames: _col0, _col1
-          Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
             table:
@@ -2401,7 +2476,7 @@ STAGE PLANS:
               key expressions: _col1 (type: string)
               sort order: +
               Map-reduce partition columns: _col1 (type: string)
-              Statistics: Num rows: 24 Data size: 179 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 12 Data size: 89 Basic stats: COMPLETE Column stats: NONE
               value expressions: _col0 (type: int)
           TableScan
             alias: c
@@ -2419,11 +2494,11 @@ STAGE PLANS:
             0 {VALUE._col0}
             1 
           outputColumnNames: _col0
-          Statistics: Num rows: 26 Data size: 196 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 13 Data size: 97 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int)
             outputColumnNames: _col0
-            Statistics: Num rows: 26 Data size: 196 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 13 Data size: 97 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
               table:
@@ -2438,15 +2513,15 @@ STAGE PLANS:
             Reduce Output Operator
               key expressions: _col0 (type: int)
               sort order: +
-              Statistics: Num rows: 26 Data size: 196 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 13 Data size: 97 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: int)
           outputColumnNames: _col0
-          Statistics: Num rows: 26 Data size: 196 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 13 Data size: 97 Basic stats: COMPLETE Column stats: NONE
           File Output Operator
             compressed: false
-            Statistics: Num rows: 26 Data size: 196 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 13 Data size: 97 Basic stats: COMPLETE Column stats: NONE
             table:
                 input format: org.apache.hadoop.mapred.TextInputFormat
                 output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
@@ -2520,31 +2595,34 @@ STAGE PLANS:
           TableScan
             alias: b
             Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-            Select Operator
-              expressions: value (type: string)
-              outputColumnNames: value
-              Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-              Group By Operator
-                keys: value (type: string)
-                mode: hash
-                outputColumnNames: _col0
-                Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
-                Reduce Output Operator
-                  key expressions: _col0 (type: string)
-                  sort order: +
-                  Map-reduce partition columns: _col0 (type: string)
-                  Statistics: Num rows: 11 Data size: 84 Basic stats: COMPLETE Column stats: NONE
+            Filter Operator
+              predicate: value is not null (type: boolean)
+              Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+              Select Operator
+                expressions: value (type: string)
+                outputColumnNames: value
+                Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                Group By Operator
+                  keys: value (type: string)
+                  mode: hash
+                  outputColumnNames: _col0
+                  Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
+                  Reduce Output Operator
+                    key expressions: _col0 (type: string)
+                    sort order: +
+                    Map-reduce partition columns: _col0 (type: string)
+                    Statistics: Num rows: 6 Data size: 45 Basic stats: COMPLETE Column stats: NONE
           TableScan
             alias: a
             Statistics: Num rows: 22 Data size: 163 Basic stats: COMPLETE Column stats: NONE
             Filter Operator
-              predicate: (key > 100) (type: boolean)
-              Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+              predicate: (value is not null and (key > 100)) (type: boolean)
+              Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
               Reduce Output Operator
                 key expressions: value (type: string)
                 sort order: +
                 Map-reduce partition columns: value (type: string)
-                Statistics: Num rows: 7 Data size: 51 Basic stats: COMPLETE Column stats: NONE
+                Statistics: Num rows: 3 Data size: 22 Basic stats: COMPLETE Column stats: NONE
                 value expressions: key (type: int)
       Reduce Operator Tree:
         Join Operator
@@ -2554,14 +2632,14 @@ STAGE PLANS:
             0 {VALUE._col0}
             1 
           outputColumnNames: _col0
-          Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+          Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
           Select Operator
             expressions: _col0 (type: int)
             outputColumnNames: _col0
-            Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+            Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
             File Output Operator
               compressed: false
-              Statistics: Num rows: 12 Data size: 92 Basic stats: COMPLETE Column stats: NONE
+              Statistics: Num rows: 6 Data size: 49 Basic stats: COMPLETE Column stats: NONE
               table:
                   input format: org.apache.hadoop.mapred.TextInputFormat
                   output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat