http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/llap/subquery_views.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/subquery_views.q.out 
b/ql/src/test/results/clientpositive/llap/subquery_views.q.out
index 2c85309..4609668 100644
--- a/ql/src/test/results/clientpositive/llap/subquery_views.q.out
+++ b/ql/src/test/results/clientpositive/llap/subquery_views.q.out
@@ -132,33 +132,33 @@ STAGE PLANS:
                         Map-reduce partition columns: _col0 (type: string), 
_col1 (type: string)
                         Statistics: Num rows: 166 Data size: 29548 Basic 
stats: COMPLETE Column stats: COMPLETE
                   Filter Operator
-                    predicate: ((value > 'val_11') and key is not null) (type: 
boolean)
-                    Statistics: Num rows: 166 Data size: 29548 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    predicate: ((key < '11') and (value > 'val_11')) (type: 
boolean)
+                    Statistics: Num rows: 55 Data size: 9790 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Group By Operator
                       aggregations: count(), count(key)
                       keys: key (type: string), value (type: string)
                       mode: hash
                       outputColumnNames: _col0, _col1, _col2, _col3
-                      Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: string), _col1 (type: 
string)
                         sort order: ++
                         Map-reduce partition columns: _col0 (type: string), 
_col1 (type: string)
-                        Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                        Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                         value expressions: _col2 (type: bigint), _col3 (type: 
bigint)
                   Filter Operator
-                    predicate: ((value > 'val_11') and key is not null) (type: 
boolean)
-                    Statistics: Num rows: 166 Data size: 29548 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    predicate: ((key < '11') and (value > 'val_11')) (type: 
boolean)
+                    Statistics: Num rows: 55 Data size: 9790 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Group By Operator
                       keys: key (type: string), value (type: string)
                       mode: hash
                       outputColumnNames: _col0, _col1
-                      Statistics: Num rows: 83 Data size: 14774 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Statistics: Num rows: 27 Data size: 4806 Basic stats: 
COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: string), _col1 (type: 
string)
                         sort order: ++
                         Map-reduce partition columns: _col0 (type: string), 
_col1 (type: string)
-                        Statistics: Num rows: 83 Data size: 14774 Basic stats: 
COMPLETE Column stats: COMPLETE
+                        Statistics: Num rows: 27 Data size: 4806 Basic stats: 
COMPLETE Column stats: COMPLETE
                   Filter Operator
                     predicate: (key < '11') (type: boolean)
                     Statistics: Num rows: 166 Data size: 29548 Basic stats: 
COMPLETE Column stats: COMPLETE
@@ -172,19 +172,19 @@ STAGE PLANS:
                         Map-reduce partition columns: _col0 (type: string), 
_col1 (type: string)
                         Statistics: Num rows: 166 Data size: 29548 Basic 
stats: COMPLETE Column stats: COMPLETE
                   Filter Operator
-                    predicate: ((value > 'val_11') and key is not null) (type: 
boolean)
-                    Statistics: Num rows: 166 Data size: 29548 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    predicate: ((key < '11') and (value > 'val_11')) (type: 
boolean)
+                    Statistics: Num rows: 55 Data size: 9790 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Group By Operator
                       aggregations: count(), count(key)
                       keys: key (type: string), value (type: string)
                       mode: hash
                       outputColumnNames: _col0, _col1, _col2, _col3
-                      Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: string), _col1 (type: 
string)
                         sort order: ++
                         Map-reduce partition columns: _col0 (type: string), 
_col1 (type: string)
-                        Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                        Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                         value expressions: _col2 (type: bigint), _col3 (type: 
bigint)
             Execution mode: vectorized, llap
             LLAP IO: no inputs
@@ -195,16 +195,19 @@ STAGE PLANS:
                   properties:
                     insideView TRUE
                   Statistics: Num rows: 500 Data size: 43500 Basic stats: 
COMPLETE Column stats: COMPLETE
-                  Group By Operator
-                    keys: key (type: string)
-                    mode: hash
-                    outputColumnNames: _col0
-                    Statistics: Num rows: 250 Data size: 21750 Basic stats: 
COMPLETE Column stats: COMPLETE
-                    Reduce Output Operator
-                      key expressions: _col0 (type: string)
-                      sort order: +
-                      Map-reduce partition columns: _col0 (type: string)
-                      Statistics: Num rows: 250 Data size: 21750 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Filter Operator
+                    predicate: (key < '11') (type: boolean)
+                    Statistics: Num rows: 166 Data size: 14442 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    Group By Operator
+                      keys: key (type: string)
+                      mode: hash
+                      outputColumnNames: _col0
+                      Statistics: Num rows: 83 Data size: 7221 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Reduce Output Operator
+                        key expressions: _col0 (type: string)
+                        sort order: +
+                        Map-reduce partition columns: _col0 (type: string)
+                        Statistics: Num rows: 83 Data size: 7221 Basic stats: 
COMPLETE Column stats: COMPLETE
             Execution mode: vectorized, llap
             LLAP IO: no inputs
         Reducer 10 
@@ -214,12 +217,12 @@ STAGE PLANS:
                 keys: KEY._col0 (type: string)
                 mode: mergepartial
                 outputColumnNames: _col0
-                Statistics: Num rows: 250 Data size: 21750 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 83 Data size: 7221 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
-                  Statistics: Num rows: 250 Data size: 21750 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 83 Data size: 7221 Basic stats: 
COMPLETE Column stats: COMPLETE
         Reducer 2 
             Execution mode: llap
             Reduce Operator Tree:
@@ -232,19 +235,19 @@ STAGE PLANS:
                   1 _col0 (type: string), _col1 (type: string)
                   2 _col3 (type: string), _col1 (type: string)
                 outputColumnNames: _col0, _col1, _col4, _col5, _col8
-                Statistics: Num rows: 87 Data size: 17226 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 26 Data size: 5148 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Filter Operator
                   predicate: CASE WHEN ((_col4 = 0L)) THEN (true) WHEN (_col4 
is null) THEN (true) WHEN (_col8 is not null) THEN (false) WHEN (_col0 is null) 
THEN (null) WHEN ((_col5 < _col4)) THEN (false) ELSE (true) END (type: boolean)
-                  Statistics: Num rows: 43 Data size: 8514 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 13 Data size: 2574 Basic stats: 
COMPLETE Column stats: COMPLETE
                   Select Operator
                     expressions: _col0 (type: string), _col1 (type: string)
                     outputColumnNames: _col0, _col1
-                    Statistics: Num rows: 43 Data size: 7654 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    Statistics: Num rows: 13 Data size: 2314 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Reduce Output Operator
                       key expressions: _col0 (type: string)
                       sort order: +
                       Map-reduce partition columns: _col0 (type: string)
-                      Statistics: Num rows: 43 Data size: 7654 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Statistics: Num rows: 13 Data size: 2314 Basic stats: 
COMPLETE Column stats: COMPLETE
                       value expressions: _col1 (type: string)
         Reducer 3 
             Execution mode: llap
@@ -256,10 +259,10 @@ STAGE PLANS:
                   0 _col0 (type: string)
                   1 _col0 (type: string)
                 outputColumnNames: _col0, _col1
-                Statistics: Num rows: 43 Data size: 7654 Basic stats: COMPLETE 
Column stats: COMPLETE
+                Statistics: Num rows: 13 Data size: 2314 Basic stats: COMPLETE 
Column stats: COMPLETE
                 File Output Operator
                   compressed: false
-                  Statistics: Num rows: 43 Data size: 7654 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 13 Data size: 2314 Basic stats: 
COMPLETE Column stats: COMPLETE
                   table:
                       input format: 
org.apache.hadoop.mapred.SequenceFileInputFormat
                       output format: 
org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
@@ -272,12 +275,12 @@ STAGE PLANS:
                 keys: KEY._col0 (type: string), KEY._col1 (type: string)
                 mode: mergepartial
                 outputColumnNames: _col0, _col1, _col2, _col3
-                Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 27 Data size: 5238 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Reduce Output Operator
                   key expressions: _col0 (type: string), _col1 (type: string)
                   sort order: ++
                   Map-reduce partition columns: _col0 (type: string), _col1 
(type: string)
-                  Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                   value expressions: _col2 (type: bigint), _col3 (type: bigint)
         Reducer 5 
             Execution mode: vectorized, llap
@@ -286,16 +289,16 @@ STAGE PLANS:
                 keys: KEY._col0 (type: string), KEY._col1 (type: string)
                 mode: mergepartial
                 outputColumnNames: _col0, _col1
-                Statistics: Num rows: 83 Data size: 14774 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 27 Data size: 4806 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Select Operator
                   expressions: _col0 (type: string), _col1 (type: string), 
true (type: boolean)
                   outputColumnNames: _col0, _col1, _col2
-                  Statistics: Num rows: 83 Data size: 15106 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 27 Data size: 4914 Basic stats: 
COMPLETE Column stats: COMPLETE
                   Reduce Output Operator
                     key expressions: _col0 (type: string)
                     sort order: +
                     Map-reduce partition columns: _col0 (type: string)
-                    Statistics: Num rows: 83 Data size: 15106 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    Statistics: Num rows: 27 Data size: 4914 Basic stats: 
COMPLETE Column stats: COMPLETE
                     value expressions: _col1 (type: string), _col2 (type: 
boolean)
         Reducer 6 
             Execution mode: llap
@@ -307,18 +310,18 @@ STAGE PLANS:
                   0 _col0 (type: string)
                   1 _col0 (type: string)
                 outputColumnNames: _col1, _col2, _col3
-                Statistics: Num rows: 67 Data size: 12194 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 21 Data size: 3822 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Reduce Output Operator
                   key expressions: _col3 (type: string), _col1 (type: string)
                   sort order: ++
                   Map-reduce partition columns: _col3 (type: string), _col1 
(type: string)
-                  Statistics: Num rows: 67 Data size: 12194 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 21 Data size: 3822 Basic stats: 
COMPLETE Column stats: COMPLETE
                   value expressions: _col2 (type: boolean)
                 Reduce Output Operator
                   key expressions: _col3 (type: string), _col1 (type: string)
                   sort order: ++
                   Map-reduce partition columns: _col3 (type: string), _col1 
(type: string)
-                  Statistics: Num rows: 67 Data size: 12194 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 21 Data size: 3822 Basic stats: 
COMPLETE Column stats: COMPLETE
                   value expressions: _col2 (type: boolean)
         Reducer 7 
             Execution mode: llap
@@ -332,24 +335,24 @@ STAGE PLANS:
                   1 _col0 (type: string), _col1 (type: string)
                   2 _col3 (type: string), _col1 (type: string)
                 outputColumnNames: _col0, _col4, _col5, _col8
-                Statistics: Num rows: 87 Data size: 9309 Basic stats: COMPLETE 
Column stats: COMPLETE
+                Statistics: Num rows: 26 Data size: 2782 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Filter Operator
                   predicate: CASE WHEN ((_col4 = 0L)) THEN (true) WHEN (_col4 
is null) THEN (true) WHEN (_col8 is not null) THEN (false) WHEN (_col0 is null) 
THEN (null) WHEN ((_col5 < _col4)) THEN (false) ELSE (true) END (type: boolean)
-                  Statistics: Num rows: 43 Data size: 4601 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 13 Data size: 1391 Basic stats: 
COMPLETE Column stats: COMPLETE
                   Select Operator
                     expressions: _col0 (type: string)
                     outputColumnNames: _col0
-                    Statistics: Num rows: 43 Data size: 3741 Basic stats: 
COMPLETE Column stats: COMPLETE
+                    Statistics: Num rows: 13 Data size: 1131 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Group By Operator
                       keys: _col0 (type: string)
                       mode: hash
                       outputColumnNames: _col0
-                      Statistics: Num rows: 8 Data size: 696 Basic stats: 
COMPLETE Column stats: COMPLETE
+                      Statistics: Num rows: 1 Data size: 87 Basic stats: 
COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: string)
                         sort order: +
                         Map-reduce partition columns: _col0 (type: string)
-                        Statistics: Num rows: 8 Data size: 696 Basic stats: 
COMPLETE Column stats: COMPLETE
+                        Statistics: Num rows: 1 Data size: 87 Basic stats: 
COMPLETE Column stats: COMPLETE
         Reducer 8 
             Execution mode: vectorized, llap
             Reduce Operator Tree:
@@ -358,12 +361,12 @@ STAGE PLANS:
                 keys: KEY._col0 (type: string), KEY._col1 (type: string)
                 mode: mergepartial
                 outputColumnNames: _col0, _col1, _col2, _col3
-                Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                Statistics: Num rows: 27 Data size: 5238 Basic stats: COMPLETE 
Column stats: COMPLETE
                 Reduce Output Operator
                   key expressions: _col0 (type: string), _col1 (type: string)
                   sort order: ++
                   Map-reduce partition columns: _col0 (type: string), _col1 
(type: string)
-                  Statistics: Num rows: 83 Data size: 16102 Basic stats: 
COMPLETE Column stats: COMPLETE
+                  Statistics: Num rows: 27 Data size: 5238 Basic stats: 
COMPLETE Column stats: COMPLETE
                   value expressions: _col2 (type: bigint), _col3 (type: bigint)
 
   Stage: Stage-0

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query1.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query1.q.out
index 8db216c..2a9dbed 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query1.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query1.q.out
@@ -223,15 +223,15 @@ STAGE PLANS:
                     outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 15837566 Data size: 1227103566 Basic 
stats: COMPLETE Column stats: NONE
                     Select Operator
-                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), true (type: boolean), _col0 (type: int)
-                      outputColumnNames: _col0, _col1, _col2
+                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), _col0 (type: int)
+                      outputColumnNames: _col0, _col1
                       Statistics: Num rows: 15837566 Data size: 1227103566 
Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
-                        key expressions: _col2 (type: int)
+                        key expressions: _col1 (type: int)
                         sort order: +
-                        Map-reduce partition columns: _col2 (type: int)
+                        Map-reduce partition columns: _col1 (type: int)
                         Statistics: Num rows: 15837566 Data size: 1227103566 
Basic stats: COMPLETE Column stats: NONE
-                        value expressions: _col0 (type: decimal(38,11)), _col1 
(type: boolean)
+                        value expressions: _col0 (type: decimal(38,11))
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -308,11 +308,11 @@ STAGE PLANS:
                      Inner Join 0 to 1
                 keys:
                   0 _col1 (type: int)
-                  1 _col2 (type: int)
-                outputColumnNames: _col2, _col6, _col7, _col8
+                  1 _col1 (type: int)
+                outputColumnNames: _col2, _col6, _col7
                 Statistics: Num rows: 96800003 Data size: 83249958789 Basic 
stats: COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col2 > CASE WHEN (_col8 is null) THEN (null) 
ELSE (_col7) END) (type: boolean)
+                  predicate: (_col2 > _col7) (type: boolean)
                   Statistics: Num rows: 32266667 Data size: 27749985689 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col6 (type: string)

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query30.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query30.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query30.q.out
index 7035418..16c11ca 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query30.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query30.q.out
@@ -121,7 +121,7 @@ STAGE PLANS:
                   alias: customer_address
                   Statistics: Num rows: 40000000 Data size: 40595195284 Basic 
stats: COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ca_address_sk is not null (type: boolean)
+                    predicate: (ca_address_sk is not null and ca_state is not 
null) (type: boolean)
                     Statistics: Num rows: 40000000 Data size: 40595195284 
Basic stats: COMPLETE Column stats: NONE
                     Select Operator
                       expressions: ca_address_sk (type: int), ca_state (type: 
string)
@@ -234,11 +234,11 @@ STAGE PLANS:
                      Inner Join 0 to 1
                 keys:
                   0 _col1 (type: string)
-                  1 _col2 (type: string)
-                outputColumnNames: _col0, _col2, _col3, _col4
+                  1 _col1 (type: string)
+                outputColumnNames: _col0, _col2, _col3
                 Statistics: Num rows: 24200000 Data size: 24560094211 Basic 
stats: COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col2 > CASE WHEN (_col4 is null) THEN (null) 
ELSE (_col3) END) (type: boolean)
+                  predicate: (_col2 > _col3) (type: boolean)
                   Statistics: Num rows: 8066666 Data size: 8186697393 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col2 (type: decimal(17,2))
@@ -308,15 +308,15 @@ STAGE PLANS:
                     outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
                     Select Operator
-                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), true (type: boolean), _col0 (type: string)
-                      outputColumnNames: _col0, _col1, _col2
+                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), _col0 (type: string)
+                      outputColumnNames: _col0, _col1
                       Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
-                        key expressions: _col2 (type: string)
+                        key expressions: _col1 (type: string)
                         sort order: +
-                        Map-reduce partition columns: _col2 (type: string)
+                        Map-reduce partition columns: _col1 (type: string)
                         Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
-                        value expressions: _col0 (type: decimal(38,11)), _col1 
(type: boolean)
+                        value expressions: _col0 (type: decimal(38,11))
         Reducer 2 
             Reduce Operator Tree:
               Join Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query32.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query32.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query32.q.out
index 2222cdd..bb17957 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query32.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query32.q.out
@@ -210,10 +210,10 @@ STAGE PLANS:
                 keys:
                   0 _col1 (type: int)
                   1 _col2 (type: int)
-                outputColumnNames: _col2, _col5
+                outputColumnNames: _col2, _col6
                 Statistics: Num rows: 348467716 Data size: 47189528877 Basic 
stats: COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col2 > _col5) (type: boolean)
+                  predicate: (_col2 > CAST( (1.3 * _col6) AS decimal(14,7))) 
(type: boolean)
                   Statistics: Num rows: 116155905 Data size: 15729842913 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col2 (type: decimal(7,2))
@@ -257,31 +257,31 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 158394413 Data size: 21449785388 Basic 
stats: COMPLETE Column stats: NONE
                 Select Operator
-                  expressions: (1.3 * (_col1 / _col2)) (type: decimal(38,21)), 
_col0 (type: int)
+                  expressions: _col0 (type: int), (_col1 / _col2) (type: 
decimal(37,22))
                   outputColumnNames: _col0, _col1
                   Statistics: Num rows: 158394413 Data size: 21449785388 Basic 
stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
-                    key expressions: _col1 (type: int)
+                    key expressions: _col0 (type: int)
                     sort order: +
-                    Map-reduce partition columns: _col1 (type: int)
+                    Map-reduce partition columns: _col0 (type: int)
                     Statistics: Num rows: 158394413 Data size: 21449785388 
Basic stats: COMPLETE Column stats: NONE
-                    value expressions: _col0 (type: decimal(38,21))
+                    value expressions: _col1 (type: decimal(37,22))
         Reducer 7 
             Reduce Operator Tree:
               Join Operator
                 condition map:
                      Inner Join 0 to 1
                 keys:
-                  0 _col1 (type: int)
+                  0 _col0 (type: int)
                   1 _col0 (type: int)
-                outputColumnNames: _col0, _col2
+                outputColumnNames: _col1, _col2
                 Statistics: Num rows: 174233858 Data size: 23594764438 Basic 
stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col2 (type: int)
                   sort order: +
                   Map-reduce partition columns: _col2 (type: int)
                   Statistics: Num rows: 174233858 Data size: 23594764438 Basic 
stats: COMPLETE Column stats: NONE
-                  value expressions: _col0 (type: decimal(38,21))
+                  value expressions: _col1 (type: decimal(37,22))
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query6.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query6.q.out
index a7f08d4..4557413 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query6.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query6.q.out
@@ -242,7 +242,7 @@ STAGE PLANS:
                   alias: i
                   Statistics: Num rows: 462000 Data size: 663560457 Basic 
stats: COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: i_item_sk is not null (type: boolean)
+                    predicate: (i_category is not null and i_item_sk is not 
null) (type: boolean)
                     Statistics: Num rows: 462000 Data size: 663560457 Basic 
stats: COMPLETE Column stats: NONE
                     Select Operator
                       expressions: i_item_sk (type: int), i_current_price 
(type: decimal(7,2)), i_category (type: string)
@@ -306,8 +306,8 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 231000 Data size: 331780228 Basic stats: 
COMPLETE Column stats: NONE
                 Select Operator
-                  expressions: (_col1 / _col2) (type: decimal(37,22)), true 
(type: boolean), _col0 (type: string)
-                  outputColumnNames: _col0, _col1, _col2
+                  expressions: (_col1 / _col2) (type: decimal(37,22)), _col0 
(type: string)
+                  outputColumnNames: _col0, _col1
                   Statistics: Num rows: 231000 Data size: 331780228 Basic 
stats: COMPLETE Column stats: NONE
                   Map Join Operator
                     condition map:
@@ -315,31 +315,31 @@ STAGE PLANS:
                     keys:
                       0 
                       1 
-                    outputColumnNames: _col0, _col1, _col2
+                    outputColumnNames: _col0, _col1
                     input vertices:
                       1 Reducer 19
                     Statistics: Num rows: 231000 Data size: 333859228 Basic 
stats: COMPLETE Column stats: NONE
                     Reduce Output Operator
-                      key expressions: _col2 (type: string)
+                      key expressions: _col1 (type: string)
                       sort order: +
-                      Map-reduce partition columns: _col2 (type: string)
+                      Map-reduce partition columns: _col1 (type: string)
                       Statistics: Num rows: 231000 Data size: 333859228 Basic 
stats: COMPLETE Column stats: NONE
-                      value expressions: _col0 (type: decimal(37,22)), _col1 
(type: boolean)
+                      value expressions: _col0 (type: decimal(37,22))
         Reducer 16 
             Reduce Operator Tree:
               Join Operator
                 condition map:
                      Inner Join 0 to 1
                 keys:
-                  0 _col2 (type: string)
+                  0 _col1 (type: string)
                   1 _col2 (type: string)
-                outputColumnNames: _col0, _col1, _col4, _col5
+                outputColumnNames: _col0, _col3, _col4
                 Statistics: Num rows: 508200 Data size: 729916518 Basic stats: 
COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col5 > (1.2 * CASE WHEN (_col1 is null) THEN 
(null) ELSE (_col0) END)) (type: boolean)
+                  predicate: (_col4 > (1.2 * CAST( _col0 AS decimal(16,6)))) 
(type: boolean)
                   Statistics: Num rows: 169400 Data size: 243305506 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
-                    expressions: _col4 (type: int)
+                    expressions: _col3 (type: int)
                     outputColumnNames: _col0
                     Statistics: Num rows: 169400 Data size: 243305506 Basic 
stats: COMPLETE Column stats: NONE
                     Reduce Output Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query81.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query81.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query81.q.out
index 2928647..c824c26 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query81.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query81.q.out
@@ -121,7 +121,7 @@ STAGE PLANS:
                   alias: customer_address
                   Statistics: Num rows: 40000000 Data size: 40595195284 Basic 
stats: COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: ca_address_sk is not null (type: boolean)
+                    predicate: (ca_address_sk is not null and ca_state is not 
null) (type: boolean)
                     Statistics: Num rows: 40000000 Data size: 40595195284 
Basic stats: COMPLETE Column stats: NONE
                     Select Operator
                       expressions: ca_address_sk (type: int), ca_state (type: 
string)
@@ -235,11 +235,11 @@ STAGE PLANS:
                      Inner Join 0 to 1
                 keys:
                   0 _col1 (type: string)
-                  1 _col2 (type: string)
-                outputColumnNames: _col0, _col2, _col3, _col4
+                  1 _col1 (type: string)
+                outputColumnNames: _col0, _col2, _col3
                 Statistics: Num rows: 24200000 Data size: 24560094211 Basic 
stats: COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col2 > CASE WHEN (_col4 is null) THEN (null) 
ELSE (_col3) END) (type: boolean)
+                  predicate: (_col2 > _col3) (type: boolean)
                   Statistics: Num rows: 8066666 Data size: 8186697393 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col2 (type: decimal(17,2))
@@ -309,15 +309,15 @@ STAGE PLANS:
                     outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
                     Select Operator
-                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), true (type: boolean), _col0 (type: string)
-                      outputColumnNames: _col0, _col1, _col2
+                      expressions: ((_col1 / _col2) * 1.2) (type: 
decimal(38,11)), _col0 (type: string)
+                      outputColumnNames: _col0, _col1
                       Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
-                        key expressions: _col2 (type: string)
+                        key expressions: _col1 (type: string)
                         sort order: +
-                        Map-reduce partition columns: _col2 (type: string)
+                        Map-reduce partition columns: _col1 (type: string)
                         Statistics: Num rows: 11000000 Data size: 11163678945 
Basic stats: COMPLETE Column stats: NONE
-                        value expressions: _col0 (type: decimal(38,11)), _col1 
(type: boolean)
+                        value expressions: _col0 (type: decimal(38,11))
         Reducer 2 
             Reduce Operator Tree:
               Join Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/spark/query92.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/spark/query92.q.out 
b/ql/src/test/results/clientpositive/perf/spark/query92.q.out
index c5d8792..ae63392 100644
--- a/ql/src/test/results/clientpositive/perf/spark/query92.q.out
+++ b/ql/src/test/results/clientpositive/perf/spark/query92.q.out
@@ -215,10 +215,10 @@ STAGE PLANS:
                 keys:
                   0 _col1 (type: int)
                   1 _col2 (type: int)
-                outputColumnNames: _col2, _col5
+                outputColumnNames: _col2, _col6
                 Statistics: Num rows: 174243235 Data size: 23692040863 Basic 
stats: COMPLETE Column stats: NONE
                 Filter Operator
-                  predicate: (_col2 > _col5) (type: boolean)
+                  predicate: (_col2 > CAST( (1.3 * _col6) AS decimal(14,7))) 
(type: boolean)
                   Statistics: Num rows: 58081078 Data size: 7897346909 Basic 
stats: COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col2 (type: decimal(7,2))
@@ -277,31 +277,31 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 79201469 Data size: 10769109250 Basic 
stats: COMPLETE Column stats: NONE
                 Select Operator
-                  expressions: (1.3 * (_col1 / _col2)) (type: decimal(38,21)), 
_col0 (type: int)
+                  expressions: _col0 (type: int), (_col1 / _col2) (type: 
decimal(37,22))
                   outputColumnNames: _col0, _col1
                   Statistics: Num rows: 79201469 Data size: 10769109250 Basic 
stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
-                    key expressions: _col1 (type: int)
+                    key expressions: _col0 (type: int)
                     sort order: +
-                    Map-reduce partition columns: _col1 (type: int)
+                    Map-reduce partition columns: _col0 (type: int)
                     Statistics: Num rows: 79201469 Data size: 10769109250 
Basic stats: COMPLETE Column stats: NONE
-                    value expressions: _col0 (type: decimal(38,21))
+                    value expressions: _col1 (type: decimal(37,22))
         Reducer 8 
             Reduce Operator Tree:
               Join Operator
                 condition map:
                      Inner Join 0 to 1
                 keys:
-                  0 _col1 (type: int)
+                  0 _col0 (type: int)
                   1 _col0 (type: int)
-                outputColumnNames: _col0, _col2
+                outputColumnNames: _col1, _col2
                 Statistics: Num rows: 87121617 Data size: 11846020431 Basic 
stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col2 (type: int)
                   sort order: +
                   Map-reduce partition columns: _col2 (type: int)
                   Statistics: Num rows: 87121617 Data size: 11846020431 Basic 
stats: COMPLETE Column stats: NONE
-                  value expressions: _col0 (type: decimal(38,21))
+                  value expressions: _col1 (type: decimal(37,22))
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query1.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query1.q.out
index eb1f83c..ea6e0da 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query1.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query1.q.out
@@ -73,9 +73,9 @@ Stage-0
               Select Operator [SEL_49] (rows=32266667 width=860)
                 Output:["_col0"]
                 Filter Operator [FIL_48] (rows=32266667 width=860)
-                  predicate:(_col2 > CASE WHEN (_col8 is null) THEN (null) 
ELSE (_col7) END)
+                  predicate:(_col2 > _col7)
                   Merge Join Operator [MERGEJOIN_81] (rows=96800003 width=860)
-                    
Conds:RS_45._col1=RS_105._col2(Inner),Output:["_col2","_col6","_col7","_col8"]
+                    
Conds:RS_45._col1=RS_105._col1(Inner),Output:["_col2","_col6","_col7"]
                   <-Reducer 5 [SIMPLE_EDGE]
                     SHUFFLE [RS_45]
                       PartitionCols:_col1
@@ -138,9 +138,9 @@ Stage-0
                                                 
default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"]
                   <-Reducer 9 [SIMPLE_EDGE] vectorized
                     SHUFFLE [RS_105]
-                      PartitionCols:_col2
+                      PartitionCols:_col1
                       Select Operator [SEL_104] (rows=15837566 width=77)
-                        Output:["_col0","_col1","_col2"]
+                        Output:["_col0","_col1"]
                         Group By Operator [GBY_103] (rows=15837566 width=77)
                           
Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1
                           Select Operator [SEL_102] (rows=31675133 width=77)

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query30.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query30.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query30.q.out
index 7e5dc5a..4d0e2d4 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query30.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query30.q.out
@@ -117,14 +117,14 @@ Stage-0
                     Select Operator [SEL_55] (rows=8066666 width=1014)
                       Output:["_col0","_col2"]
                       Filter Operator [FIL_54] (rows=8066666 width=1014)
-                        predicate:(_col2 > CASE WHEN (_col4 is null) THEN 
(null) ELSE (_col3) END)
+                        predicate:(_col2 > _col3)
                         Merge Join Operator [MERGEJOIN_106] (rows=24200000 
width=1014)
-                          
Conds:RS_132._col1=RS_137._col2(Inner),Output:["_col0","_col2","_col3","_col4"]
+                          
Conds:RS_132._col1=RS_137._col1(Inner),Output:["_col0","_col2","_col3"]
                         <-Reducer 10 [SIMPLE_EDGE] vectorized
                           SHUFFLE [RS_137]
-                            PartitionCols:_col2
+                            PartitionCols:_col1
                             Select Operator [SEL_136] (rows=11000000 
width=1014)
-                              Output:["_col0","_col1","_col2"]
+                              Output:["_col0","_col1"]
                               Group By Operator [GBY_135] (rows=11000000 
width=1014)
                                 
Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col0
                                 Select Operator [SEL_134] (rows=22000000 
width=1014)
@@ -189,7 +189,7 @@ Stage-0
                                         Select Operator [SEL_115] 
(rows=40000000 width=1014)
                                           Output:["_col0","_col1"]
                                           Filter Operator [FIL_112] 
(rows=40000000 width=1014)
-                                            predicate:ca_address_sk is not null
+                                            predicate:(ca_address_sk is not 
null and ca_state is not null)
                                              Please refer to the previous 
TableScan [TS_3]
                                     <-Reducer 12 [SIMPLE_EDGE]
                                       SHUFFLE [RS_18]

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query32.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query32.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query32.q.out
index a047b16..258175f 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query32.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query32.q.out
@@ -78,9 +78,9 @@ Stage-0
                 Select Operator [SEL_34] (rows=116155905 width=135)
                   Output:["_col2"]
                   Filter Operator [FIL_33] (rows=116155905 width=135)
-                    predicate:(_col2 > _col5)
+                    predicate:(_col2 > CAST( (1.3 * _col6) AS decimal(14,7)))
                     Merge Join Operator [MERGEJOIN_61] (rows=348467716 
width=135)
-                      
Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col5"]
+                      
Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col6"]
                     <-Reducer 2 [SIMPLE_EDGE]
                       SHUFFLE [RS_30]
                         PartitionCols:_col1
@@ -108,7 +108,7 @@ Stage-0
                       FORWARD [RS_31]
                         PartitionCols:_col2
                         Merge Join Operator [MERGEJOIN_60] (rows=174233858 
width=135)
-                          
Conds:RS_70._col1=RS_73._col0(Inner),Output:["_col0","_col2"]
+                          
Conds:RS_70._col0=RS_73._col0(Inner),Output:["_col1","_col2"]
                         <-Map 8 [SIMPLE_EDGE] vectorized
                           SHUFFLE [RS_73]
                             PartitionCols:_col0
@@ -120,7 +120,7 @@ Stage-0
                                   
default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"]
                         <-Reducer 5 [ONE_TO_ONE_EDGE] vectorized
                           FORWARD [RS_70]
-                            PartitionCols:_col1
+                            PartitionCols:_col0
                             Select Operator [SEL_69] (rows=158394413 width=135)
                               Output:["_col0","_col1"]
                               Group By Operator [GBY_68] (rows=158394413 
width=135)

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query6.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query6.q.out
index 0e71d5d..bafd175 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query6.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query6.q.out
@@ -95,23 +95,23 @@ Stage-0
                           Select Operator [SEL_54] (rows=169400 width=1436)
                             Output:["_col0"]
                             Filter Operator [FIL_53] (rows=169400 width=1436)
-                              predicate:(_col5 > (1.2 * CASE WHEN (_col1 is 
null) THEN (null) ELSE (_col0) END))
+                              predicate:(_col4 > (1.2 * CAST( _col0 AS 
decimal(16,6))))
                               Merge Join Operator [MERGEJOIN_112] (rows=508200 
width=1436)
-                                
Conds:RS_50._col2=RS_153._col2(Inner),Output:["_col0","_col1","_col4","_col5"]
+                                
Conds:RS_50._col1=RS_153._col2(Inner),Output:["_col0","_col3","_col4"]
                               <-Map 20 [SIMPLE_EDGE] vectorized
                                 SHUFFLE [RS_153]
                                   PartitionCols:_col2
                                   Select Operator [SEL_152] (rows=462000 
width=1436)
                                     Output:["_col0","_col1","_col2"]
                                     Filter Operator [FIL_151] (rows=462000 
width=1436)
-                                      predicate:i_item_sk is not null
+                                      predicate:(i_category is not null and 
i_item_sk is not null)
                                       TableScan [TS_44] (rows=462000 
width=1436)
                                         
default@item,i,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price","i_category"]
                               <-Reducer 12 [SIMPLE_EDGE]
                                 SHUFFLE [RS_50]
-                                  PartitionCols:_col2
+                                  PartitionCols:_col1
                                   Merge Join Operator [MERGEJOIN_111] 
(rows=231000 width=1445)
-                                    
Conds:(Inner),Output:["_col0","_col1","_col2"]
+                                    Conds:(Inner),Output:["_col0","_col1"]
                                   <-Reducer 11 [CUSTOM_SIMPLE_EDGE] vectorized
                                     PARTITION_ONLY_SHUFFLE [RS_144]
                                       Select Operator [SEL_143] (rows=1 
width=8)
@@ -140,7 +140,7 @@ Stage-0
                                   <-Reducer 19 [CUSTOM_SIMPLE_EDGE] vectorized
                                     PARTITION_ONLY_SHUFFLE [RS_150]
                                       Select Operator [SEL_149] (rows=231000 
width=1436)
-                                        Output:["_col0","_col1","_col2"]
+                                        Output:["_col0","_col1"]
                                         Group By Operator [GBY_148] 
(rows=231000 width=1436)
                                           
Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0
                                         <-Map 18 [SIMPLE_EDGE] vectorized

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query81.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query81.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query81.q.out
index 1a6910e..376500e 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query81.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query81.q.out
@@ -77,12 +77,12 @@ Stage-0
     limit:-1
     Stage-1
       Reducer 4 vectorized
-      File Output Operator [FS_142]
-        Select Operator [SEL_141] (rows=100 width=860)
+      File Output Operator [FS_140]
+        Select Operator [SEL_139] (rows=100 width=860)
           
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"]
-          Limit [LIM_140] (rows=100 width=860)
+          Limit [LIM_138] (rows=100 width=860)
             Number of rows:100
-            Select Operator [SEL_139] (rows=96800003 width=860)
+            Select Operator [SEL_137] (rows=96800003 width=860)
               
Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"]
             <-Reducer 3 [SIMPLE_EDGE]
               SHUFFLE [RS_63]
@@ -96,19 +96,19 @@ Stage-0
                       Select Operator [SEL_55] (rows=8066666 width=1014)
                         Output:["_col0","_col2"]
                         Filter Operator [FIL_54] (rows=8066666 width=1014)
-                          predicate:(_col2 > CASE WHEN (_col4 is null) THEN 
(null) ELSE (_col3) END)
+                          predicate:(_col2 > _col3)
                           Merge Join Operator [MERGEJOIN_107] (rows=24200000 
width=1014)
-                            
Conds:RS_133._col1=RS_138._col2(Inner),Output:["_col0","_col2","_col3","_col4"]
+                            
Conds:RS_131._col1=RS_136._col1(Inner),Output:["_col0","_col2","_col3"]
                           <-Reducer 13 [SIMPLE_EDGE] vectorized
-                            SHUFFLE [RS_138]
-                              PartitionCols:_col2
-                              Select Operator [SEL_137] (rows=11000000 
width=1014)
-                                Output:["_col0","_col1","_col2"]
-                                Group By Operator [GBY_136] (rows=11000000 
width=1014)
+                            SHUFFLE [RS_136]
+                              PartitionCols:_col1
+                              Select Operator [SEL_135] (rows=11000000 
width=1014)
+                                Output:["_col0","_col1"]
+                                Group By Operator [GBY_134] (rows=11000000 
width=1014)
                                   
Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col0
-                                  Select Operator [SEL_135] (rows=22000000 
width=1014)
+                                  Select Operator [SEL_133] (rows=22000000 
width=1014)
                                     Output:["_col0","_col2"]
-                                    Group By Operator [GBY_134] (rows=22000000 
width=1014)
+                                    Group By Operator [GBY_132] (rows=22000000 
width=1014)
                                       
Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1
                                     <-Reducer 12 [SIMPLE_EDGE]
                                       SHUFFLE [RS_43]
@@ -116,13 +116,13 @@ Stage-0
                                         Group By Operator [GBY_42] 
(rows=44000000 width=1014)
                                           
Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col7, _col1
                                           Merge Join Operator [MERGEJOIN_106] 
(rows=44000000 width=1014)
-                                            
Conds:RS_38._col2=RS_130._col0(Inner),Output:["_col1","_col3","_col7"]
+                                            
Conds:RS_38._col2=RS_128._col0(Inner),Output:["_col1","_col3","_col7"]
                                           <-Map 15 [SIMPLE_EDGE] vectorized
-                                            SHUFFLE [RS_130]
+                                            SHUFFLE [RS_128]
                                               PartitionCols:_col0
-                                              Select Operator [SEL_128] 
(rows=40000000 width=1014)
+                                              Select Operator [SEL_126] 
(rows=40000000 width=1014)
                                                 Output:["_col0","_col1"]
-                                                Filter Operator [FIL_126] 
(rows=40000000 width=1014)
+                                                Filter Operator [FIL_125] 
(rows=40000000 width=1014)
                                                   predicate:(ca_address_sk is 
not null and ca_state is not null)
                                                   TableScan [TS_12] 
(rows=40000000 width=1014)
                                                     
default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
@@ -150,11 +150,11 @@ Stage-0
                                                       TableScan [TS_6] 
(rows=28798881 width=106)
                                                         
default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_returned_date_sk","cr_returning_customer_sk","cr_returning_addr_sk","cr_return_amt_inc_tax"]
                           <-Reducer 9 [SIMPLE_EDGE] vectorized
-                            SHUFFLE [RS_133]
+                            SHUFFLE [RS_131]
                               PartitionCols:_col1
-                              Select Operator [SEL_132] (rows=22000000 
width=1014)
+                              Select Operator [SEL_130] (rows=22000000 
width=1014)
                                 Output:["_col0","_col1","_col2"]
-                                Group By Operator [GBY_131] (rows=22000000 
width=1014)
+                                Group By Operator [GBY_129] (rows=22000000 
width=1014)
                                   
Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0,
 KEY._col1
                                 <-Reducer 8 [SIMPLE_EDGE]
                                   SHUFFLE [RS_23]
@@ -162,15 +162,11 @@ Stage-0
                                     Group By Operator [GBY_22] (rows=44000000 
width=1014)
                                       
Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col7, _col1
                                       Merge Join Operator [MERGEJOIN_104] 
(rows=44000000 width=1014)
-                                        
Conds:RS_18._col2=RS_129._col0(Inner),Output:["_col1","_col3","_col7"]
+                                        
Conds:RS_18._col2=RS_127._col0(Inner),Output:["_col1","_col3","_col7"]
                                       <-Map 15 [SIMPLE_EDGE] vectorized
-                                        SHUFFLE [RS_129]
+                                        SHUFFLE [RS_127]
                                           PartitionCols:_col0
-                                          Select Operator [SEL_127] 
(rows=40000000 width=1014)
-                                            Output:["_col0","_col1"]
-                                            Filter Operator [FIL_125] 
(rows=40000000 width=1014)
-                                              predicate:ca_address_sk is not 
null
-                                               Please refer to the previous 
TableScan [TS_12]
+                                           Please refer to the previous Select 
Operator [SEL_126]
                                       <-Reducer 7 [SIMPLE_EDGE]
                                         SHUFFLE [RS_18]
                                           PartitionCols:_col2

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/perf/tez/query92.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query92.q.out 
b/ql/src/test/results/clientpositive/perf/tez/query92.q.out
index 154c032..be03c4d 100644
--- a/ql/src/test/results/clientpositive/perf/tez/query92.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/query92.q.out
@@ -89,9 +89,9 @@ Stage-0
                       Select Operator [SEL_34] (rows=58081078 width=135)
                         Output:["_col2"]
                         Filter Operator [FIL_33] (rows=58081078 width=135)
-                          predicate:(_col2 > _col5)
+                          predicate:(_col2 > CAST( (1.3 * _col6) AS 
decimal(14,7)))
                           Merge Join Operator [MERGEJOIN_64] (rows=174243235 
width=135)
-                            
Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col5"]
+                            
Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col6"]
                           <-Reducer 2 [SIMPLE_EDGE]
                             SHUFFLE [RS_30]
                               PartitionCols:_col1
@@ -119,7 +119,7 @@ Stage-0
                             FORWARD [RS_31]
                               PartitionCols:_col2
                               Merge Join Operator [MERGEJOIN_63] 
(rows=87121617 width=135)
-                                
Conds:RS_73._col1=RS_76._col0(Inner),Output:["_col0","_col2"]
+                                
Conds:RS_73._col0=RS_76._col0(Inner),Output:["_col1","_col2"]
                               <-Map 9 [SIMPLE_EDGE] vectorized
                                 SHUFFLE [RS_76]
                                   PartitionCols:_col0
@@ -131,7 +131,7 @@ Stage-0
                                         
default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"]
                               <-Reducer 6 [ONE_TO_ONE_EDGE] vectorized
                                 FORWARD [RS_73]
-                                  PartitionCols:_col1
+                                  PartitionCols:_col0
                                   Select Operator [SEL_72] (rows=79201469 
width=135)
                                     Output:["_col0","_col1"]
                                     Group By Operator [GBY_71] (rows=79201469 
width=135)

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out 
b/ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out
index bdf9857..f8e28e6 100644
--- a/ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out
+++ b/ql/src/test/results/clientpositive/spark/spark_explainuser_1.q.out
@@ -2273,27 +2273,27 @@ Stage-0
     limit:-1
     Stage-1
       Reducer 3
-      File Output Operator [FS_26]
-        Select Operator [SEL_25] (rows=13 width=223)
+      File Output Operator [FS_24]
+        Select Operator [SEL_23] (rows=13 width=223)
           Output:["_col0","_col1","_col2"]
-          Filter Operator [FIL_24] (rows=13 width=231)
-            predicate:(not CASE WHEN ((_col4 = 0L)) THEN (false) WHEN (_col4 
is null) THEN (false) WHEN (_col8 is not null) THEN (true) WHEN (_col0 is null) 
THEN (null) WHEN ((_col5 < _col4)) THEN (true) ELSE (false) END)
-            Join Operator [JOIN_23] (rows=26 width=230)
+          Filter Operator [FIL_22] (rows=13 width=231)
+            predicate:CASE WHEN ((_col4 = 0L)) THEN (true) WHEN (_col4 is 
null) THEN (true) WHEN (_col8 is not null) THEN (false) WHEN (_col0 is null) 
THEN (null) WHEN ((_col5 < _col4)) THEN (false) ELSE (true) END
+            Join Operator [JOIN_21] (rows=26 width=230)
               
Output:["_col0","_col1","_col2","_col4","_col5","_col8"],condition 
map:[{"":"{\"type\":\"Left Outer\",\"left\":0,\"right\":1}"}],keys:{"0":"_col0, 
_col1","1":"_col0, _col1"}
             <-Reducer 2 [PARTITION-LEVEL SORT]
-              PARTITION-LEVEL SORT [RS_21]
+              PARTITION-LEVEL SORT [RS_19]
                 PartitionCols:_col0, _col1
-                Join Operator [JOIN_20] (rows=26 width=229)
+                Join Operator [JOIN_18] (rows=26 width=229)
                   Output:["_col0","_col1","_col2","_col4","_col5"],condition 
map:[{"":"{\"type\":\"Left 
Outer\",\"left\":0,\"right\":1}"}],keys:{"0":"_col1","1":"_col0"}
                 <-Map 1 [PARTITION-LEVEL SORT]
-                  PARTITION-LEVEL SORT [RS_18]
+                  PARTITION-LEVEL SORT [RS_16]
                     PartitionCols:_col1
                     Select Operator [SEL_1] (rows=26 width=223)
                       Output:["_col0","_col1","_col2"]
                       TableScan [TS_0] (rows=26 width=223)
                         
default@part,b,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"]
                 <-Reducer 5 [PARTITION-LEVEL SORT]
-                  PARTITION-LEVEL SORT [RS_19]
+                  PARTITION-LEVEL SORT [RS_17]
                     PartitionCols:_col0
                     Group By Operator [GBY_7] (rows=2 width=114)
                       
Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0
@@ -2304,30 +2304,28 @@ Stage-0
                           
Output:["_col0","_col1","_col2"],aggregations:["count()","count(p_name)"],keys:p_mfgr
                           Select Operator [SEL_4] (rows=8 width=223)
                             Output:["p_name","p_mfgr"]
-                            Filter Operator [FIL_27] (rows=8 width=223)
+                            Filter Operator [FIL_25] (rows=8 width=223)
                               predicate:((p_size < 10) and p_mfgr is not null)
                               TableScan [TS_2] (rows=26 width=223)
                                 
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"]
             <-Reducer 7 [PARTITION-LEVEL SORT]
-              PARTITION-LEVEL SORT [RS_22]
+              PARTITION-LEVEL SORT [RS_20]
                 PartitionCols:_col0, _col1
-                Select Operator [SEL_17] (rows=4 width=223)
+                Select Operator [SEL_15] (rows=4 width=223)
                   Output:["_col0","_col1","_col2"]
-                  Filter Operator [FIL_16] (rows=4 width=219)
-                    predicate:_col0 is not null
-                    Group By Operator [GBY_14] (rows=4 width=219)
-                      Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
-                    <-Map 6 [GROUP]
-                      GROUP [RS_13]
-                        PartitionCols:_col0, _col1
-                        Group By Operator [GBY_12] (rows=4 width=219)
-                          Output:["_col0","_col1"],keys:p_name, p_mfgr
-                          Select Operator [SEL_11] (rows=8 width=223)
-                            Output:["p_name","p_mfgr"]
-                            Filter Operator [FIL_28] (rows=8 width=223)
-                              predicate:((p_size < 10) and p_mfgr is not null)
-                              TableScan [TS_9] (rows=26 width=223)
-                                
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"]
+                  Group By Operator [GBY_14] (rows=4 width=219)
+                    Output:["_col0","_col1"],keys:KEY._col0, KEY._col1
+                  <-Map 6 [GROUP]
+                    GROUP [RS_13]
+                      PartitionCols:_col0, _col1
+                      Group By Operator [GBY_12] (rows=4 width=219)
+                        Output:["_col0","_col1"],keys:p_name, p_mfgr
+                        Select Operator [SEL_11] (rows=8 width=223)
+                          Output:["p_name","p_mfgr"]
+                          Filter Operator [FIL_26] (rows=8 width=223)
+                            predicate:((p_size < 10) and p_mfgr is not null 
and p_name is not null)
+                            TableScan [TS_9] (rows=26 width=223)
+                              
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"]
 
 PREHOOK: query: explain select p_name, p_size
 from
@@ -2429,7 +2427,7 @@ POSTHOOK: type: QUERY
 Plan optimized by CBO.
 
 Vertex dependency in root stage
-Reducer 10 <- Map 6 (GROUP)
+Reducer 10 <- Map 9 (GROUP)
 Reducer 2 <- Map 1 (GROUP)
 Reducer 3 <- Reducer 2 (PARTITION-LEVEL SORT), Reducer 8 (PARTITION-LEVEL SORT)
 Reducer 4 <- Reducer 10 (PARTITION-LEVEL SORT), Reducer 3 (PARTITION-LEVEL 
SORT)
@@ -2442,46 +2440,42 @@ Stage-0
     limit:-1
     Stage-1
       Reducer 5
-      File Output Operator [FS_37]
-        Select Operator [SEL_36] (rows=3 width=106)
+      File Output Operator [FS_36]
+        Select Operator [SEL_35] (rows=2 width=106)
           Output:["_col0","_col1"]
         <-Reducer 4 [SORT]
-          SORT [RS_35]
-            Select Operator [SEL_34] (rows=3 width=106)
+          SORT [RS_34]
+            Select Operator [SEL_33] (rows=2 width=106)
               Output:["_col0","_col1"]
-              Filter Operator [FIL_33] (rows=3 width=119)
-                predicate:(not CASE WHEN ((_col3 = 0L)) THEN (false) WHEN 
(_col3 is null) THEN (false) WHEN (_col7 is not null) THEN (true) WHEN (_col0 
is null) THEN (null) WHEN ((_col4 < _col3)) THEN (true) ELSE (false) END)
-                Join Operator [JOIN_32] (rows=5 width=114)
+              Filter Operator [FIL_32] (rows=2 width=116)
+                predicate:CASE WHEN ((_col3 = 0L)) THEN (true) WHEN (_col3 is 
null) THEN (true) WHEN (_col7 is not null) THEN (false) WHEN (_col0 is null) 
THEN (null) WHEN ((_col4 < _col3)) THEN (false) ELSE (true) END
+                Join Operator [JOIN_31] (rows=5 width=114)
                   Output:["_col0","_col1","_col3","_col4","_col7"],condition 
map:[{"":"{\"type\":\"Left Outer\",\"left\":0,\"right\":1}"}],keys:{"0":"_col0, 
_col1","1":"_col0, _col1"}
                 <-Reducer 10 [PARTITION-LEVEL SORT]
-                  PARTITION-LEVEL SORT [RS_31]
+                  PARTITION-LEVEL SORT [RS_30]
                     PartitionCols:_col0, _col1
-                    Select Operator [SEL_26] (rows=1 width=110)
+                    Select Operator [SEL_25] (rows=1 width=110)
                       Output:["_col0","_col1","_col2"]
-                      Filter Operator [FIL_25] (rows=1 width=110)
-                        predicate:_col0 is not null
-                        Select Operator [SEL_24] (rows=1 width=110)
-                          Output:["_col0","_col1"]
-                          Filter Operator [FIL_23] (rows=1 width=114)
-                            predicate:(((_col2 - _col1) > 600.0D) and _col1 is 
not null)
-                            Group By Operator [GBY_22] (rows=5 width=114)
-                              
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0
-                            <-Map 6 [GROUP]
-                              GROUP [RS_9]
-                                PartitionCols:_col0
-                                Group By Operator [GBY_8] (rows=5 width=114)
-                                  
Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr
-                                  Select Operator [SEL_7] (rows=26 width=106)
-                                    Output:["p_mfgr","p_retailprice"]
-                                    TableScan [TS_6] (rows=26 width=106)
-                                      
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"]
+                      Filter Operator [FIL_24] (rows=1 width=114)
+                        predicate:(((_col2 - _col1) > 600.0D) and _col1 is not 
null)
+                        Group By Operator [GBY_23] (rows=5 width=114)
+                          
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0
+                        <-Map 9 [GROUP]
+                          GROUP [RS_22]
+                            PartitionCols:_col0
+                            Group By Operator [GBY_21] (rows=5 width=114)
+                              
Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr
+                              Filter Operator [FIL_37] (rows=26 width=106)
+                                predicate:p_mfgr is not null
+                                TableScan [TS_18] (rows=26 width=106)
+                                  
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"]
                 <-Reducer 3 [PARTITION-LEVEL SORT]
-                  PARTITION-LEVEL SORT [RS_30]
+                  PARTITION-LEVEL SORT [RS_29]
                     PartitionCols:_col0, _col1
-                    Join Operator [JOIN_29] (rows=5 width=112)
+                    Join Operator [JOIN_28] (rows=5 width=112)
                       Output:["_col0","_col1","_col3","_col4"],condition 
map:[{"":"{\"type\":\"Left 
Outer\",\"left\":0,\"right\":1}"}],keys:{"0":"_col1","1":"_col0"}
                     <-Reducer 2 [PARTITION-LEVEL SORT]
-                      PARTITION-LEVEL SORT [RS_27]
+                      PARTITION-LEVEL SORT [RS_26]
                         PartitionCols:_col1
                         Group By Operator [GBY_4] (rows=5 width=106)
                           
Output:["_col0","_col1"],aggregations:["min(VALUE._col0)"],keys:KEY._col0
@@ -2495,7 +2489,7 @@ Stage-0
                                 TableScan [TS_0] (rows=26 width=106)
                                   
default@part,b,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"]
                     <-Reducer 8 [PARTITION-LEVEL SORT]
-                      PARTITION-LEVEL SORT [RS_28]
+                      PARTITION-LEVEL SORT [RS_27]
                         PartitionCols:_col0
                         Group By Operator [GBY_16] (rows=1 width=24)
                           
Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0
@@ -2510,7 +2504,15 @@ Stage-0
                                   predicate:(((_col2 - _col1) > 600.0D) and 
_col1 is not null)
                                   Group By Operator [GBY_10] (rows=5 width=114)
                                     
Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0
-                                  <- Please refer to the previous Map 6 [GROUP]
+                                  <-Map 6 [GROUP]
+                                    GROUP [RS_9]
+                                      PartitionCols:_col0
+                                      Group By Operator [GBY_8] (rows=5 
width=114)
+                                        
Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr
+                                        Select Operator [SEL_7] (rows=26 
width=106)
+                                          Output:["p_mfgr","p_retailprice"]
+                                          TableScan [TS_6] (rows=26 width=106)
+                                            
default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"]
 
 PREHOOK: query: explain select count(c_int) over(), sum(c_float) over(), 
max(c_int) over(), min(c_int) over(), row_number() over(), rank() over(), 
dense_rank() over(), percent_rank() over(), lead(c_int, 2, c_int) over(), 
lag(c_float, 2, c_float) over() from cbo_t1
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/f567a823/ql/src/test/results/clientpositive/spark/subquery_in.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/subquery_in.q.out 
b/ql/src/test/results/clientpositive/spark/subquery_in.q.out
index a7174be..8b94181 100644
--- a/ql/src/test/results/clientpositive/spark/subquery_in.q.out
+++ b/ql/src/test/results/clientpositive/spark/subquery_in.q.out
@@ -2051,7 +2051,7 @@ STAGE PLANS:
                   alias: p
                   Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: p_name is not null (type: boolean)
+                    predicate: (p_name is not null and p_partkey is not null 
and p_size is not null) (type: boolean)
                     Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: p_partkey (type: int), p_name (type: 
string), p_size (type: int)
@@ -2426,7 +2426,7 @@ STAGE PLANS:
                   alias: part
                   Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
                   Filter Operator
-                    predicate: p_type is not null (type: boolean)
+                    predicate: (p_size is not null and p_type is not null) 
(type: boolean)
                     Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
                     Select Operator
                       expressions: p_type (type: string), p_size (type: int)
@@ -2444,12 +2444,12 @@ STAGE PLANS:
                 TableScan
                   alias: part
                   Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
-                  Select Operator
-                    expressions: (p_size + 1) (type: int)
-                    outputColumnNames: _col0
+                  Filter Operator
+                    predicate: p_size is not null (type: boolean)
                     Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
-                    Filter Operator
-                      predicate: _col0 is not null (type: boolean)
+                    Select Operator
+                      expressions: (p_size + 1) (type: int)
+                      outputColumnNames: _col0
                       Statistics: Num rows: 26 Data size: 3147 Basic stats: 
COMPLETE Column stats: NONE
                       Group By Operator
                         keys: _col0 (type: int)
@@ -4206,7 +4206,7 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10
                 Statistics: Num rows: 28 Data size: 3461 Basic stats: COMPLETE 
Column stats: NONE
                 Filter Operator
-                  predicate: (sq_count_check(_col10, true) > 0) (type: boolean)
+                  predicate: (sq_count_check(CASE WHEN (_col10 is null) THEN 
(0) ELSE (_col10) END, true) > 0) (type: boolean)
                   Statistics: Num rows: 9 Data size: 1112 Basic stats: 
COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: 
int), _col6 (type: string), _col7 (type: double), _col8 (type: string)
@@ -4690,23 +4690,19 @@ STAGE PLANS:
                 mode: mergepartial
                 outputColumnNames: _col0, _col1
                 Statistics: Num rows: 13 Data size: 1573 Basic stats: COMPLETE 
Column stats: NONE
-                Select Operator
-                  expressions: _col1 (type: bigint), _col0 (type: string)
-                  outputColumnNames: _col0, _col1
+                Filter Operator
+                  predicate: _col1 is not null (type: boolean)
                   Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                  Filter Operator
-                    predicate: _col0 is not null (type: boolean)
+                  Select Operator
+                    expressions: _col1 (type: bigint), _col0 (type: string), 
true (type: boolean)
+                    outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                    Select Operator
-                      expressions: _col0 (type: bigint), _col1 (type: string), 
true (type: boolean)
-                      outputColumnNames: _col0, _col1, _col2
+                    Reduce Output Operator
+                      key expressions: _col1 (type: string), _col0 (type: 
bigint)
+                      sort order: ++
+                      Map-reduce partition columns: _col1 (type: string), 
_col0 (type: bigint)
                       Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                      Reduce Output Operator
-                        key expressions: _col1 (type: string), _col0 (type: 
bigint)
-                        sort order: ++
-                        Map-reduce partition columns: _col1 (type: string), 
_col0 (type: bigint)
-                        Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                        value expressions: _col2 (type: boolean)
+                      value expressions: _col2 (type: boolean)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -4718,7 +4714,7 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10
                 Statistics: Num rows: 28 Data size: 3461 Basic stats: COMPLETE 
Column stats: NONE
                 Filter Operator
-                  predicate: (sq_count_check(_col10, true) > 0) (type: boolean)
+                  predicate: (sq_count_check(CASE WHEN (_col10 is null) THEN 
(0) ELSE (_col10) END, true) > 0) (type: boolean)
                   Statistics: Num rows: 9 Data size: 1112 Basic stats: 
COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: 
int), _col6 (type: string), _col7 (type: double), _col8 (type: string)
@@ -4738,14 +4734,14 @@ STAGE PLANS:
                 keys:
                   0 _col4 (type: string)
                   1 _col0 (type: string)
-                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col12, _col13
+                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10, _col11
                 Statistics: Num rows: 9 Data size: 1223 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col4 (type: string), UDFToLong(_col5) 
(type: bigint)
                   sort order: ++
                   Map-reduce partition columns: _col4 (type: string), 
UDFToLong(_col5) (type: bigint)
                   Statistics: Num rows: 9 Data size: 1223 Basic stats: 
COMPLETE Column stats: NONE
-                  value expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col5 (type: int), _col6 (type: 
string), _col7 (type: double), _col8 (type: string), _col12 (type: bigint), 
_col13 (type: bigint)
+                  value expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col5 (type: int), _col6 (type: 
string), _col7 (type: double), _col8 (type: string), _col10 (type: bigint), 
_col11 (type: bigint)
         Reducer 4 
             Reduce Operator Tree:
               Join Operator
@@ -4754,10 +4750,10 @@ STAGE PLANS:
                 keys:
                   0 _col4 (type: string), UDFToLong(_col5) (type: bigint)
                   1 _col1 (type: string), _col0 (type: bigint)
-                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col12, _col13, _col16
+                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10, _col11, _col14
                 Statistics: Num rows: 14 Data size: 1730 Basic stats: COMPLETE 
Column stats: NONE
                 Filter Operator
-                  predicate: (not CASE WHEN ((_col12 = 0L)) THEN (false) WHEN 
(_col12 is null) THEN (false) WHEN (_col16 is not null) THEN (true) WHEN (_col5 
is null) THEN (null) WHEN ((_col13 < _col12)) THEN (true) ELSE (false) END) 
(type: boolean)
+                  predicate: CASE WHEN ((_col10 = 0L)) THEN (true) WHEN 
(_col10 is null) THEN (true) WHEN (_col14 is not null) THEN (false) WHEN (_col5 
is null) THEN (null) WHEN ((_col11 < _col10)) THEN (false) ELSE (true) END 
(type: boolean)
                   Statistics: Num rows: 7 Data size: 865 Basic stats: COMPLETE 
Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: 
int), _col6 (type: string), _col7 (type: double), _col8 (type: string)
@@ -4934,23 +4930,19 @@ STAGE PLANS:
                 mode: mergepartial
                 outputColumnNames: _col0, _col1, _col2
                 Statistics: Num rows: 13 Data size: 1573 Basic stats: COMPLETE 
Column stats: NONE
-                Select Operator
-                  expressions: (_col1 / _col2) (type: double), _col0 (type: 
int)
-                  outputColumnNames: _col0, _col1
+                Filter Operator
+                  predicate: (_col1 is not null and _col2 is not null) (type: 
boolean)
                   Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                  Filter Operator
-                    predicate: _col0 is not null (type: boolean)
+                  Select Operator
+                    expressions: (_col1 / _col2) (type: double), _col0 (type: 
int), true (type: boolean)
+                    outputColumnNames: _col0, _col1, _col2
                     Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                    Select Operator
-                      expressions: _col0 (type: double), _col1 (type: int), 
true (type: boolean)
-                      outputColumnNames: _col0, _col1, _col2
+                    Reduce Output Operator
+                      key expressions: _col1 (type: int), _col0 (type: double)
+                      sort order: ++
+                      Map-reduce partition columns: _col1 (type: int), _col0 
(type: double)
                       Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                      Reduce Output Operator
-                        key expressions: _col1 (type: int), _col0 (type: 
double)
-                        sort order: ++
-                        Map-reduce partition columns: _col1 (type: int), _col0 
(type: double)
-                        Statistics: Num rows: 13 Data size: 1573 Basic stats: 
COMPLETE Column stats: NONE
-                        value expressions: _col2 (type: boolean)
+                      value expressions: _col2 (type: boolean)
         Reducer 2 
             Reduce Operator Tree:
               Join Operator
@@ -4962,7 +4954,7 @@ STAGE PLANS:
                 outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10
                 Statistics: Num rows: 28 Data size: 3461 Basic stats: COMPLETE 
Column stats: NONE
                 Filter Operator
-                  predicate: (sq_count_check(_col10, true) > 0) (type: boolean)
+                  predicate: (sq_count_check(CASE WHEN (_col10 is null) THEN 
(0) ELSE (_col10) END, true) > 0) (type: boolean)
                   Statistics: Num rows: 9 Data size: 1112 Basic stats: 
COMPLETE Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: 
int), _col6 (type: string), _col7 (type: double), _col8 (type: string)
@@ -4982,14 +4974,14 @@ STAGE PLANS:
                 keys:
                   0 _col0 (type: int)
                   1 _col0 (type: int)
-                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col12, _col13
+                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10, _col11
                 Statistics: Num rows: 9 Data size: 1223 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), UDFToDouble(_col5) 
(type: double)
                   sort order: ++
                   Map-reduce partition columns: _col0 (type: int), 
UDFToDouble(_col5) (type: double)
                   Statistics: Num rows: 9 Data size: 1223 Basic stats: 
COMPLETE Column stats: NONE
-                  value expressions: _col1 (type: string), _col2 (type: 
string), _col3 (type: string), _col4 (type: string), _col5 (type: int), _col6 
(type: string), _col7 (type: double), _col8 (type: string), _col12 (type: 
bigint), _col13 (type: bigint)
+                  value expressions: _col1 (type: string), _col2 (type: 
string), _col3 (type: string), _col4 (type: string), _col5 (type: int), _col6 
(type: string), _col7 (type: double), _col8 (type: string), _col10 (type: 
bigint), _col11 (type: bigint)
         Reducer 4 
             Reduce Operator Tree:
               Join Operator
@@ -4998,10 +4990,10 @@ STAGE PLANS:
                 keys:
                   0 _col0 (type: int), UDFToDouble(_col5) (type: double)
                   1 _col1 (type: int), _col0 (type: double)
-                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col12, _col13, _col16
+                outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8, _col10, _col11, _col14
                 Statistics: Num rows: 14 Data size: 1730 Basic stats: COMPLETE 
Column stats: NONE
                 Filter Operator
-                  predicate: (not CASE WHEN ((_col12 = 0L)) THEN (false) WHEN 
(_col12 is null) THEN (false) WHEN (_col16 is not null) THEN (true) WHEN (_col5 
is null) THEN (null) WHEN ((_col13 < _col12)) THEN (true) ELSE (false) END) 
(type: boolean)
+                  predicate: CASE WHEN ((_col10 = 0L)) THEN (true) WHEN 
(_col10 is null) THEN (true) WHEN (_col14 is not null) THEN (false) WHEN (_col5 
is null) THEN (null) WHEN ((_col11 < _col10)) THEN (false) ELSE (true) END 
(type: boolean)
                   Statistics: Num rows: 7 Data size: 865 Basic stats: COMPLETE 
Column stats: NONE
                   Select Operator
                     expressions: _col0 (type: int), _col1 (type: string), 
_col2 (type: string), _col3 (type: string), _col4 (type: string), _col5 (type: 
int), _col6 (type: string), _col7 (type: double), _col8 (type: string)

Reply via email to