http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out 
b/ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out
index b597ebd..9043fb1 100644
--- a/ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out
+++ b/ql/src/test/results/clientpositive/spark/dynamic_rdd_cache.q.out
@@ -932,14 +932,14 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
                 Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                 Select Operator
-                  expressions: _col0 (type: int), _col1 (type: int), _col3 
(type: int), _col4 (type: double), _col5 (type: double)
-                  outputColumnNames: _col0, _col1, _col3, _col4, _col5
+                  expressions: _col1 (type: int), _col0 (type: int), _col3 
(type: int), _col4 (type: double), _col5 (type: double)
+                  outputColumnNames: _col1, _col2, _col3, _col4, _col5
                   Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                   Filter Operator
                     predicate: (CASE (_col5) WHEN (0) THEN (0) ELSE ((_col4 / 
_col5)) END > 1.0) (type: boolean)
                     Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                     Select Operator
-                      expressions: _col1 (type: int), _col0 (type: int), _col3 
(type: int), _col5 (type: double), CASE (_col5) WHEN (0) THEN (null) ELSE 
((_col4 / _col5)) END (type: double)
+                      expressions: _col1 (type: int), _col2 (type: int), _col3 
(type: int), _col5 (type: double), CASE (_col5) WHEN (0) THEN (null) ELSE 
((_col4 / _col5)) END (type: double)
                       outputColumnNames: _col1, _col2, _col3, _col4, _col5
                       Statistics: Num rows: 1 Data size: 0 Basic stats: 
PARTIAL Column stats: NONE
                       Reduce Output Operator
@@ -1015,14 +1015,14 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
                 Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                 Select Operator
-                  expressions: _col0 (type: int), _col1 (type: int), _col3 
(type: int), _col4 (type: double), _col5 (type: double)
-                  outputColumnNames: _col0, _col1, _col3, _col4, _col5
+                  expressions: _col1 (type: int), _col0 (type: int), _col3 
(type: int), _col4 (type: double), _col5 (type: double)
+                  outputColumnNames: _col1, _col2, _col3, _col4, _col5
                   Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                   Filter Operator
                     predicate: (CASE (_col5) WHEN (0) THEN (0) ELSE ((_col4 / 
_col5)) END > 1.0) (type: boolean)
                     Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
                     Select Operator
-                      expressions: _col1 (type: int), _col0 (type: int), _col3 
(type: int), _col5 (type: double), CASE (_col5) WHEN (0) THEN (null) ELSE 
((_col4 / _col5)) END (type: double)
+                      expressions: _col1 (type: int), _col2 (type: int), _col3 
(type: int), _col5 (type: double), CASE (_col5) WHEN (0) THEN (null) ELSE 
((_col4 / _col5)) END (type: double)
                       outputColumnNames: _col1, _col2, _col3, _col4, _col5
                       Statistics: Num rows: 1 Data size: 0 Basic stats: 
PARTIAL Column stats: NONE
                       Reduce Output Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/groupby_position.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/groupby_position.q.out 
b/ql/src/test/results/clientpositive/spark/groupby_position.q.out
index 81e4a1d..415703f 100644
--- a/ql/src/test/results/clientpositive/spark/groupby_position.q.out
+++ b/ql/src/test/results/clientpositive/spark/groupby_position.q.out
@@ -564,7 +564,7 @@ STAGE PLANS:
                   alias: src1
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string), 
substr(value, 5) (type: string)
@@ -586,7 +586,7 @@ STAGE PLANS:
                   alias: src1
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Group By Operator
                       keys: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/infer_bucket_sort_map_operators.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/spark/infer_bucket_sort_map_operators.q.out
 
b/ql/src/test/results/clientpositive/spark/infer_bucket_sort_map_operators.q.out
index fe124c6..57a6d59 100644
--- 
a/ql/src/test/results/clientpositive/spark/infer_bucket_sort_map_operators.q.out
+++ 
b/ql/src/test/results/clientpositive/spark/infer_bucket_sort_map_operators.q.out
@@ -209,7 +209,7 @@ STAGE PLANS:
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 250 Data size: 2656 Basic stats: 
COMPLETE Column stats: NONE
                       Filter Operator
-                        predicate: (_col1 is not null and UDFToDouble(_col1) 
is not null) (type: boolean)
+                        predicate: _col1 is not null (type: boolean)
                         Statistics: Num rows: 250 Data size: 2656 Basic stats: 
COMPLETE Column stats: NONE
                         Reduce Output Operator
                           key expressions: UDFToDouble(_col1) (type: double)
@@ -223,7 +223,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (value is not null and UDFToDouble(value) is 
not null) (type: boolean)
+                    predicate: value is not null (type: boolean)
                     Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join12.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/join12.q.out 
b/ql/src/test/results/clientpositive/spark/join12.q.out
index cca05a9..2ad0a43 100644
--- a/ql/src/test/results/clientpositive/spark/join12.q.out
+++ b/ql/src/test/results/clientpositive/spark/join12.q.out
@@ -41,7 +41,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((UDFToDouble(key) < 100.0) and 
(UDFToDouble(key) < 80.0)) and key is not null) (type: boolean)
+                    predicate: ((UDFToDouble(key) < 100.0) and 
(UDFToDouble(key) < 80.0)) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -58,7 +58,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((UDFToDouble(key) < 80.0) and 
(UDFToDouble(key) < 100.0)) and key is not null) (type: boolean)
+                    predicate: ((UDFToDouble(key) < 80.0) and 
(UDFToDouble(key) < 100.0)) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join13.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/join13.q.out 
b/ql/src/test/results/clientpositive/spark/join13.q.out
index 6ed8ca0..5b38f8c 100644
--- a/ql/src/test/results/clientpositive/spark/join13.q.out
+++ b/ql/src/test/results/clientpositive/spark/join13.q.out
@@ -77,7 +77,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((UDFToDouble(key) < 200.0) and 
UDFToDouble(key) is not null) (type: boolean)
+                    predicate: (UDFToDouble(key) < 200.0) (type: boolean)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -98,15 +98,12 @@ STAGE PLANS:
                   1 _col0 (type: string)
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                Filter Operator
-                  predicate: (UDFToDouble(_col2) + UDFToDouble(_col0)) is not 
null (type: boolean)
+                Reduce Output Operator
+                  key expressions: (UDFToDouble(_col2) + UDFToDouble(_col0)) 
(type: double)
+                  sort order: +
+                  Map-reduce partition columns: (UDFToDouble(_col2) + 
UDFToDouble(_col0)) (type: double)
                   Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                  Reduce Output Operator
-                    key expressions: (UDFToDouble(_col2) + UDFToDouble(_col0)) 
(type: double)
-                    sort order: +
-                    Map-reduce partition columns: (UDFToDouble(_col2) + 
UDFToDouble(_col0)) (type: double)
-                    Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                    value expressions: _col1 (type: string), _col2 (type: 
string)
+                  value expressions: _col1 (type: string), _col2 (type: string)
         Reducer 3 
             Reduce Operator Tree:
               Join Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join16.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/join16.q.out 
b/ql/src/test/results/clientpositive/spark/join16.q.out
index 2c40151..2496ec2 100644
--- a/ql/src/test/results/clientpositive/spark/join16.q.out
+++ b/ql/src/test/results/clientpositive/spark/join16.q.out
@@ -19,7 +19,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) > 20.0)) and (UDFToDouble(value) < 200.0)) and key is not 
null) and value is not null) (type: boolean)
+                    predicate: (((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) > 20.0)) and (UDFToDouble(value) < 200.0)) (type: boolean)
                     Statistics: Num rows: 18 Data size: 191 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -36,7 +36,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((UDFToDouble(value) < 200.0) and 
(UDFToDouble(key) > 20.0)) and (UDFToDouble(key) > 10.0)) and key is not null) 
and value is not null) (type: boolean)
+                    predicate: (((UDFToDouble(value) < 200.0) and 
(UDFToDouble(key) > 20.0)) and (UDFToDouble(key) > 10.0)) (type: boolean)
                     Statistics: Num rows: 18 Data size: 191 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/join2.q.out 
b/ql/src/test/results/clientpositive/spark/join2.q.out
index 9ee6df0..2c6311b 100644
--- a/ql/src/test/results/clientpositive/spark/join2.q.out
+++ b/ql/src/test/results/clientpositive/spark/join2.q.out
@@ -71,7 +71,7 @@ STAGE PLANS:
                   alias: src1
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (key is not null and UDFToDouble(key) is not 
null) (type: boolean)
+                    predicate: key is not null (type: boolean)
                     Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -93,15 +93,12 @@ STAGE PLANS:
                   1 _col0 (type: string)
                 outputColumnNames: _col0, _col1
                 Statistics: Num rows: 550 Data size: 5843 Basic stats: 
COMPLETE Column stats: NONE
-                Filter Operator
-                  predicate: (UDFToDouble(_col0) + UDFToDouble(_col1)) is not 
null (type: boolean)
+                Reduce Output Operator
+                  key expressions: (UDFToDouble(_col0) + UDFToDouble(_col1)) 
(type: double)
+                  sort order: +
+                  Map-reduce partition columns: (UDFToDouble(_col0) + 
UDFToDouble(_col1)) (type: double)
                   Statistics: Num rows: 550 Data size: 5843 Basic stats: 
COMPLETE Column stats: NONE
-                  Reduce Output Operator
-                    key expressions: (UDFToDouble(_col0) + UDFToDouble(_col1)) 
(type: double)
-                    sort order: +
-                    Map-reduce partition columns: (UDFToDouble(_col0) + 
UDFToDouble(_col1)) (type: double)
-                    Statistics: Num rows: 550 Data size: 5843 Basic stats: 
COMPLETE Column stats: NONE
-                    value expressions: _col0 (type: string)
+                  value expressions: _col0 (type: string)
         Reducer 3 
             Reduce Operator Tree:
               Join Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out 
b/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out
index e22cab5..b75d951 100644
--- a/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out
+++ b/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out
@@ -301,7 +301,7 @@ STAGE PLANS:
       Processor Tree:
         ListSink
 
-Warning: Shuffle Join JOIN[16][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Work 
'Reducer 3' is a cross product
+Warning: Shuffle Join JOIN[14][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Work 
'Reducer 3' is a cross product
 PREHOOK: query: explain select *
 from part p1 join part p2 join part p3 on p2.p_partkey = 1 and p3.p_name = 
p2.p_name
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out 
b/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out
index ae8cf04..e2886d3 100644
--- a/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out
+++ b/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out
@@ -307,7 +307,7 @@ STAGE PLANS:
       Processor Tree:
         ListSink
 
-Warning: Shuffle Join JOIN[16][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Work 
'Reducer 3' is a cross product
+Warning: Shuffle Join JOIN[14][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Work 
'Reducer 3' is a cross product
 PREHOOK: query: explain select *
 from part p1 join part p2 join part p3 
 where p2.p_partkey = 1 and p3.p_name = p2.p_name

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/join_reorder.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/join_reorder.q.out 
b/ql/src/test/results/clientpositive/spark/join_reorder.q.out
index 10cd56c..4933df4 100644
--- a/ql/src/test/results/clientpositive/spark/join_reorder.q.out
+++ b/ql/src/test/results/clientpositive/spark/join_reorder.q.out
@@ -73,7 +73,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 1 Data size: 30 Basic stats: COMPLETE 
Column stats: NONE
                   Filter Operator
-                    predicate: (key is not null and UDFToDouble(key) is not 
null) (type: boolean)
+                    predicate: key is not null (type: boolean)
                     Statistics: Num rows: 1 Data size: 30 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), val (type: string)
@@ -91,16 +91,16 @@ STAGE PLANS:
                   alias: c
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (key is not null and (UDFToDouble(key) + 1.0) 
is not null) (type: boolean)
+                    predicate: key is not null (type: boolean)
                     Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                       Reduce Output Operator
-                        key expressions: (UDFToDouble(_col0) + 1.0) (type: 
double)
+                        key expressions: (UDFToDouble(_col0) + UDFToDouble(1)) 
(type: double)
                         sort order: +
-                        Map-reduce partition columns: (UDFToDouble(_col0) + 
1.0) (type: double)
+                        Map-reduce partition columns: (UDFToDouble(_col0) + 
UDFToDouble(1)) (type: double)
                         Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                         value expressions: _col0 (type: string)
         Reducer 2 
@@ -110,7 +110,7 @@ STAGE PLANS:
                      Inner Join 0 to 1
                 keys:
                   0 UDFToDouble(_col0) (type: double)
-                  1 (UDFToDouble(_col0) + 1.0) (type: double)
+                  1 (UDFToDouble(_col0) + UDFToDouble(1)) (type: double)
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 550 Data size: 5843 Basic stats: 
COMPLETE Column stats: NONE
                 File Output Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/louter_join_ppr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/louter_join_ppr.q.out 
b/ql/src/test/results/clientpositive/spark/louter_join_ppr.q.out
index 767855b..c22158c 100644
--- a/ql/src/test/results/clientpositive/spark/louter_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/spark/louter_join_ppr.q.out
@@ -1002,7 +1002,7 @@ STAGE PLANS:
                   GatherStats: false
                   Filter Operator
                     isSamplingPred: false
-                    predicate: (((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -1073,7 +1073,7 @@ STAGE PLANS:
                   GatherStats: false
                   Filter Operator
                     isSamplingPred: false
-                    predicate: (((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) (type: boolean)
                     Statistics: Num rows: 12 Data size: 127 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/mapjoin_mapjoin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/mapjoin_mapjoin.q.out 
b/ql/src/test/results/clientpositive/spark/mapjoin_mapjoin.q.out
index 3a126f6..26c8958 100644
--- a/ql/src/test/results/clientpositive/spark/mapjoin_mapjoin.q.out
+++ b/ql/src/test/results/clientpositive/spark/mapjoin_mapjoin.q.out
@@ -532,7 +532,7 @@ STAGE PLANS:
                   alias: srcpart
                   Statistics: Num rows: 2000 Data size: 21248 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((value > 'val_450') and key is not null) and 
value is not null) (type: boolean)
+                    predicate: ((value > 'val_450') and key is not null) 
(type: boolean)
                     Statistics: Num rows: 666 Data size: 7075 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/outer_join_ppr.q.java1.7.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/spark/outer_join_ppr.q.java1.7.out 
b/ql/src/test/results/clientpositive/spark/outer_join_ppr.q.java1.7.out
index a3c4be7..7ac6bf8 100644
--- a/ql/src/test/results/clientpositive/spark/outer_join_ppr.q.java1.7.out
+++ b/ql/src/test/results/clientpositive/spark/outer_join_ppr.q.java1.7.out
@@ -412,7 +412,7 @@ STAGE PLANS:
                 Statistics: Num rows: 2200 Data size: 23372 Basic stats: 
COMPLETE Column stats: NONE
                 Filter Operator
                   isSamplingPred: false
-                  predicate: ((((UDFToDouble(_col0) > 10.0) and 
(UDFToDouble(_col0) < 20.0)) and (UDFToDouble(_col2) > 15.0)) and 
(UDFToDouble(_col2) < 25.0)) (type: boolean)
+                  predicate: ((UDFToDouble(_col0) > 10.0) and 
(UDFToDouble(_col0) < 20.0) and (UDFToDouble(_col2) > 15.0) and 
(UDFToDouble(_col2) < 25.0)) (type: boolean)
                   Statistics: Num rows: 27 Data size: 286 Basic stats: 
COMPLETE Column stats: NONE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out
index 08275f3..bd3dc4d 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out
@@ -40,40 +40,34 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: ((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 4 Data size: 42 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: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
         Map 4 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) and key is not null) (type: boolean)
+                    predicate: (((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -314,7 +308,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: ((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -331,7 +325,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) and key is not null) (type: boolean)
+                    predicate: (((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_join.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_join.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_join.q.out
index 2357adc..fb1d563 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_join.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_join.q.out
@@ -37,41 +37,35 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: ((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 4 Data size: 42 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: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) and key is not null) (type: boolean)
+                    predicate: (((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -576,7 +570,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: ((((((key > '1') and (key > '20')) and ((value 
< 'val_50') or (key > '2'))) and (key < '400')) and (key > '2')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 4 Data size: 42 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -593,7 +587,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) and key is not null) (type: boolean)
+                    predicate: (((((key > '2') and (key <> '4')) and (key > 
'1')) and (key > '20')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_join2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_join2.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_join2.q.out
index 68cbc5a..5848609 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_join2.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_join2.q.out
@@ -50,56 +50,47 @@ STAGE PLANS:
                       expressions: value (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 500 Data size: 5312 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: 500 Data size: 5312 Basic 
stats: COMPLETE Column stats: NONE
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((((key <> '302') and (key <> '311')) and 
((value <> 'val_50') or (key > '1'))) and (key < '400')) and (key <> '305')) 
and (key <> '14')) and value is not null) and key is not null) (type: boolean)
+                    predicate: (((((((key <> '302') and (key <> '311')) and 
((value <> 'val_50') or (key > '1'))) and (key < '400')) and (key <> '305')) 
and (key <> '14')) and value is not null) (type: boolean)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 166 Data size: 1763 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: 166 Data size: 1763 Basic 
stats: COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Map 5 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key <> '305') and (key <> '14')) and (key 
<> '302')) and (key <> '311')) and (key < '400')) and key is not null) (type: 
boolean)
+                    predicate: (((((key <> '305') and (key <> '14')) and (key 
<> '302')) and (key <> '311')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 166 Data size: 1763 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: 166 Data size: 1763 Basic 
stats: COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -138,15 +129,12 @@ STAGE PLANS:
                     expressions: _col0 (type: string), _col1 (type: string), 
_col3 (type: string)
                     outputColumnNames: _col0, _col1, _col3
                     Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                    Filter Operator
-                      predicate: _col1 is not null (type: boolean)
+                    Reduce Output Operator
+                      key expressions: _col1 (type: string)
+                      sort order: +
+                      Map-reduce partition columns: _col1 (type: string)
                       Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                      Reduce Output Operator
-                        key expressions: _col1 (type: string)
-                        sort order: +
-                        Map-reduce partition columns: _col1 (type: string)
-                        Statistics: Num rows: 182 Data size: 1939 Basic stats: 
COMPLETE Column stats: NONE
-                        value expressions: _col0 (type: string), _col3 (type: 
string)
+                      value expressions: _col0 (type: string), _col3 (type: 
string)
 
   Stage: Stage-0
     Fetch Operator
@@ -1757,7 +1745,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((((key <> '302') and (key <> '311')) and 
((value <> 'val_50') or (key > '1'))) and (key < '400')) and (key <> '305')) 
and (key <> '14')) and value is not null) and key is not null) (type: boolean)
+                    predicate: (((((((key <> '302') and (key <> '311')) and 
((value <> 'val_50') or (key > '1'))) and (key < '400')) and (key <> '305')) 
and (key <> '14')) and value is not null) (type: boolean)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -1775,7 +1763,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key <> '305') and (key <> '14')) and (key 
<> '302')) and (key <> '311')) and (key < '400')) and key is not null) (type: 
boolean)
+                    predicate: (((((key <> '305') and (key <> '14')) and (key 
<> '302')) and (key <> '311')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_join3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_join3.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_join3.q.out
index 573b352..c78d4cb 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_join3.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_join3.q.out
@@ -44,61 +44,52 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((((key <> '13') and (key <> '1')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and (key <> '12')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: (((((((key <> '13') and (key <> '1')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and (key <> '12')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 55 Data size: 584 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: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((((key <> '11') and (key > '0')) and 
((value <> 'val_500') or (key > '1'))) and (key < '400')) and (key <> '12')) 
and (key <> '4')) and (key <> '13')) and (key <> '1')) and key is not null) 
(type: boolean)
+                    predicate: ((((((((key <> '11') and (key > '0')) and 
((value <> 'val_500') or (key > '1'))) and (key < '400')) and (key <> '12')) 
and (key <> '4')) and (key <> '13')) and (key <> '1')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 55 Data size: 584 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: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
         Map 5 
             Map Operator Tree:
                 TableScan
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key <> '12') and (key <> '4')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and key is not null) (type: 
boolean)
+                    predicate: (((((key <> '12') and (key <> '4')) and (key <> 
'11')) and (key > '0')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 55 Data size: 584 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: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -137,15 +128,12 @@ STAGE PLANS:
                     expressions: _col0 (type: string), _col2 (type: string)
                     outputColumnNames: _col0, _col2
                     Statistics: Num rows: 60 Data size: 642 Basic stats: 
COMPLETE Column stats: NONE
-                    Filter Operator
-                      predicate: _col0 is not null (type: boolean)
+                    Reduce Output Operator
+                      key expressions: _col0 (type: string)
+                      sort order: +
+                      Map-reduce partition columns: _col0 (type: string)
                       Statistics: Num rows: 60 Data size: 642 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: 60 Data size: 642 Basic stats: 
COMPLETE Column stats: NONE
-                        value expressions: _col2 (type: string)
+                      value expressions: _col2 (type: string)
 
   Stage: Stage-0
     Fetch Operator
@@ -1796,7 +1784,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((((key <> '13') and (key <> '1')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and (key <> '12')) and (key <> 
'4')) and key is not null) (type: boolean)
+                    predicate: (((((((key <> '13') and (key <> '1')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and (key <> '12')) and (key <> 
'4')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -1813,7 +1801,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((((((key <> '11') and (key > '0')) and 
((value <> 'val_500') or (key > '1'))) and (key < '400')) and (key <> '12')) 
and (key <> '4')) and (key <> '13')) and (key <> '1')) and key is not null) 
(type: boolean)
+                    predicate: ((((((((key <> '11') and (key > '0')) and 
((value <> 'val_500') or (key > '1'))) and (key < '400')) and (key <> '12')) 
and (key <> '4')) and (key <> '13')) and (key <> '1')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -1830,7 +1818,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key <> '12') and (key <> '4')) and (key 
<> '11')) and (key > '0')) and (key < '400')) and key is not null) (type: 
boolean)
+                    predicate: (((((key <> '12') and (key <> '4')) and (key <> 
'11')) and (key > '0')) and (key < '400')) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_join5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_join5.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_join5.q.out
index 377d8ac..8b51969 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_join5.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_join5.q.out
@@ -32,7 +32,7 @@ POSTHOOK: Lineage: t1.id1 SIMPLE []
 POSTHOOK: Lineage: t1.id2 SIMPLE []
 POSTHOOK: Lineage: t2.d SIMPLE []
 POSTHOOK: Lineage: t2.id SIMPLE []
-Warning: Shuffle Join JOIN[17][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
+Warning: Shuffle Join JOIN[15][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
 PREHOOK: query: explain
 select a.*,b.d d1,c.d d2 from
   t1 a join t2 b on (a.id1 = b.id)
@@ -148,7 +148,7 @@ STAGE PLANS:
       Processor Tree:
         ListSink
 
-Warning: Shuffle Join JOIN[17][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
+Warning: Shuffle Join JOIN[15][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
 PREHOOK: query: explain
 select * from (
 select a.*,b.d d1,c.d d2 from
@@ -271,7 +271,7 @@ STAGE PLANS:
       Processor Tree:
         ListSink
 
-Warning: Shuffle Join JOIN[17][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
+Warning: Shuffle Join JOIN[15][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Work 
'Reducer 3' is a cross product
 PREHOOK: query: select * from (
 select a.*,b.d d1,c.d d2 from
   t1 a join t2 b on (a.id1 = b.id)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_join_filter.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_join_filter.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_join_filter.q.out
index b1a3e49..fd2d590 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_join_filter.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_join_filter.q.out
@@ -145,17 +145,13 @@ STAGE PLANS:
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        isSamplingPred: false
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 500 Data size: 5312 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: 500 Data size: 5312 Basic 
stats: COMPLETE Column stats: NONE
-                          tag: 0
-                          auto parallelism: false
+                        tag: 0
+                        auto parallelism: false
             Path -> Alias:
 #### A masked pattern was here ####
             Path -> Partition:
@@ -332,18 +328,14 @@ STAGE PLANS:
                     expressions: _col0 (type: string), (UDFToDouble(_col1) + 
2.0) (type: double), (UDFToDouble(_col1) + 3.0) (type: double)
                     outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 83 Data size: 881 Basic stats: 
COMPLETE Column stats: NONE
-                    Filter Operator
-                      isSamplingPred: false
-                      predicate: _col0 is not null (type: boolean)
+                    Reduce Output Operator
+                      key expressions: _col0 (type: string)
+                      sort order: +
+                      Map-reduce partition columns: _col0 (type: string)
                       Statistics: Num rows: 83 Data size: 881 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: 83 Data size: 881 Basic stats: 
COMPLETE Column stats: NONE
-                        tag: 1
-                        value expressions: _col1 (type: double), _col2 (type: 
double)
-                        auto parallelism: false
+                      tag: 1
+                      value expressions: _col1 (type: double), _col2 (type: 
double)
+                      auto parallelism: false
 
   Stage: Stage-0
     Fetch Operator
@@ -911,17 +903,13 @@ STAGE PLANS:
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        isSamplingPred: false
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 500 Data size: 5312 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: 500 Data size: 5312 Basic 
stats: COMPLETE Column stats: NONE
-                          tag: 0
-                          auto parallelism: false
+                        tag: 0
+                        auto parallelism: false
             Path -> Alias:
 #### A masked pattern was here ####
             Path -> Partition:
@@ -1098,18 +1086,14 @@ STAGE PLANS:
                     expressions: _col0 (type: string), (UDFToDouble(_col1) + 
2.0) (type: double), (UDFToDouble(_col1) + 3.0) (type: double)
                     outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 83 Data size: 881 Basic stats: 
COMPLETE Column stats: NONE
-                    Filter Operator
-                      isSamplingPred: false
-                      predicate: _col0 is not null (type: boolean)
+                    Reduce Output Operator
+                      key expressions: _col0 (type: string)
+                      sort order: +
+                      Map-reduce partition columns: _col0 (type: string)
                       Statistics: Num rows: 83 Data size: 881 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: 83 Data size: 881 Basic stats: 
COMPLETE Column stats: NONE
-                        tag: 1
-                        value expressions: _col1 (type: double), _col2 (type: 
double)
-                        auto parallelism: false
+                      tag: 1
+                      value expressions: _col1 (type: double), _col2 (type: 
double)
+                      auto parallelism: false
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_outer_join2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_outer_join2.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_outer_join2.q.out
index ea95e18..8695961 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_outer_join2.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_outer_join2.q.out
@@ -37,42 +37,36 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and key is not null) (type: boolean)
+                    predicate: ((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -278,7 +272,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and key is not null) (type: boolean)
+                    predicate: ((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -296,7 +290,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_outer_join3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_outer_join3.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_outer_join3.q.out
index c54029b..4a8c58c 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_outer_join3.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_outer_join3.q.out
@@ -37,42 +37,36 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and key is not null) (type: boolean)
+                    predicate: ((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -278,7 +272,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and key is not null) (type: boolean)
+                    predicate: ((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -296,7 +290,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/ppd_outer_join4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/ppd_outer_join4.q.out 
b/ql/src/test/results/clientpositive/spark/ppd_outer_join4.q.out
index 9ac30c7..8d08308 100644
--- a/ql/src/test/results/clientpositive/spark/ppd_outer_join4.q.out
+++ b/ql/src/test/results/clientpositive/spark/ppd_outer_join4.q.out
@@ -43,62 +43,53 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((sqrt(key) <> 13.0) and (key < '25')) and 
(key > '15')) and (key < '20')) and (key > '10')) and key is not null) (type: 
boolean)
+                    predicate: (((((sqrt(key) <> 13.0) and (key < '25')) and 
(key > '15')) and (key < '20')) and (key > '10')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
                       outputColumnNames: _col0
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
         Map 3 
             Map Operator Tree:
                 TableScan
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and (sqrt(key) <> 13.0)) and key is not null) (type: 
boolean)
+                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and (sqrt(key) <> 13.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Map 4 
             Map Operator Tree:
                 TableScan
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
-                      Filter Operator
-                        predicate: _col0 is not null (type: boolean)
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 6 Data size: 63 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: 63 Basic stats: 
COMPLETE Column stats: NONE
-                          value expressions: _col1 (type: string)
+                        value expressions: _col1 (type: string)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -426,7 +417,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((sqrt(key) <> 13.0) and (key < '25')) and 
(key > '15')) and (key < '20')) and (key > '10')) and key is not null) (type: 
boolean)
+                    predicate: (((((sqrt(key) <> 13.0) and (key < '25')) and 
(key > '15')) and (key < '20')) and (key > '10')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -443,7 +434,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and (sqrt(key) <> 13.0)) and key is not null) (type: 
boolean)
+                    predicate: (((((key > '10') and (key < '20')) and (key > 
'15')) and (key < '25')) and (sqrt(key) <> 13.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -461,7 +452,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) and key is not null) (type: boolean)
+                    predicate: ((((key > '15') and (key < '25')) and (key > 
'10')) and (key < '20')) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/router_join_ppr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/router_join_ppr.q.out 
b/ql/src/test/results/clientpositive/spark/router_join_ppr.q.out
index 0734d71..620e5d2 100644
--- a/ql/src/test/results/clientpositive/spark/router_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/spark/router_join_ppr.q.out
@@ -1388,7 +1388,7 @@ STAGE PLANS:
                   GatherStats: false
                   Filter Operator
                     isSamplingPred: false
-                    predicate: (((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 10.0) and 
(UDFToDouble(key) < 20.0)) and (UDFToDouble(key) > 15.0)) and (UDFToDouble(key) 
< 25.0)) (type: boolean)
                     Statistics: Num rows: 12 Data size: 127 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -1508,7 +1508,7 @@ STAGE PLANS:
                   GatherStats: false
                   Filter Operator
                     isSamplingPred: false
-                    predicate: (((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) and key is not null) (type: boolean)
+                    predicate: ((((UDFToDouble(key) > 15.0) and 
(UDFToDouble(key) < 25.0)) and (UDFToDouble(key) < 20.0)) and (UDFToDouble(key) 
> 10.0)) (type: boolean)
                     Statistics: Num rows: 6 Data size: 63 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/skewjoin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/skewjoin.q.out 
b/ql/src/test/results/clientpositive/spark/skewjoin.q.out
index ec5d4cd..b246046 100644
--- a/ql/src/test/results/clientpositive/spark/skewjoin.q.out
+++ b/ql/src/test/results/clientpositive/spark/skewjoin.q.out
@@ -823,7 +823,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((value is not null and key is not null) and 
UDFToDouble(substring(value, 5)) is not null) (type: boolean)
+                    predicate: (value is not null and key is not null) (type: 
boolean)
                     Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
@@ -840,16 +840,16 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ((value is not null and key is not null) and 
(UDFToDouble(substring(value, 5)) + 1.0) is not null) (type: boolean)
+                    predicate: (value is not null and key is not null) (type: 
boolean)
                     Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), value (type: string)
                       outputColumnNames: _col0, _col1
                       Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                       Reduce Output Operator
-                        key expressions: _col0 (type: string), 
(UDFToDouble(substring(_col1, 5)) + 1.0) (type: double)
+                        key expressions: _col0 (type: string), 
(UDFToDouble(substring(_col1, 5)) + UDFToDouble(1)) (type: double)
                         sort order: ++
-                        Map-reduce partition columns: _col0 (type: string), 
(UDFToDouble(substring(_col1, 5)) + 1.0) (type: double)
+                        Map-reduce partition columns: _col0 (type: string), 
(UDFToDouble(substring(_col1, 5)) + UDFToDouble(1)) (type: double)
                         Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                         value expressions: _col1 (type: string)
         Reducer 2 
@@ -860,7 +860,7 @@ STAGE PLANS:
                 handleSkewJoin: true
                 keys:
                   0 _col0 (type: string), UDFToDouble(substring(_col1, 5)) 
(type: double)
-                  1 _col0 (type: string), (UDFToDouble(substring(_col1, 5)) + 
1.0) (type: double)
+                  1 _col0 (type: string), (UDFToDouble(substring(_col1, 5)) + 
UDFToDouble(1)) (type: double)
                 outputColumnNames: _col2, _col3
                 Statistics: Num rows: 550 Data size: 5843 Basic stats: 
COMPLETE Column stats: NONE
                 Select Operator
@@ -1026,7 +1026,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((UDFToDouble(key) < 100.0) and 
(UDFToDouble(key) < 80.0)) and key is not null) (type: boolean)
+                    predicate: ((UDFToDouble(key) < 100.0) and 
(UDFToDouble(key) < 80.0)) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)
@@ -1043,7 +1043,7 @@ STAGE PLANS:
                   alias: src
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: (((UDFToDouble(key) < 80.0) and 
(UDFToDouble(key) < 100.0)) and key is not null) (type: boolean)
+                    predicate: ((UDFToDouble(key) < 80.0) and 
(UDFToDouble(key) < 100.0)) (type: boolean)
                     Statistics: Num rows: 55 Data size: 584 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/827ff37f/ql/src/test/results/clientpositive/spark/skewjoinopt18.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/skewjoinopt18.q.out 
b/ql/src/test/results/clientpositive/spark/skewjoinopt18.q.out
index 1994d2f..457fb05 100644
--- a/ql/src/test/results/clientpositive/spark/skewjoinopt18.q.out
+++ b/ql/src/test/results/clientpositive/spark/skewjoinopt18.q.out
@@ -91,7 +91,7 @@ STAGE PLANS:
                   alias: a
                   Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE 
Column stats: NONE
                   Filter Operator
-                    predicate: (key is not null and UDFToDouble(key) is not 
null) (type: boolean)
+                    predicate: key is not null (type: boolean)
                     Statistics: Num rows: 6 Data size: 24 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: int), val (type: string)
@@ -109,7 +109,7 @@ STAGE PLANS:
                   alias: b
                   Statistics: Num rows: 1 Data size: 30 Basic stats: COMPLETE 
Column stats: NONE
                   Filter Operator
-                    predicate: (key is not null and UDFToDouble(key) is not 
null) (type: boolean)
+                    predicate: key is not null (type: boolean)
                     Statistics: Num rows: 1 Data size: 30 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: key (type: string), val (type: string)

Reply via email to