http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_16.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_16.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_16.q.out
index 4b2c454..cd1640a 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_16.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_16.q.out
@@ -162,8 +162,8 @@ STAGE PLANS:
                   Select Vectorization:
                       className: VectorSelectOperator
                       native: true
-                      projectedOutputColumnNums: [0, 1, 2, 7, 9, 3, 8, 14, 20, 
6, 10, 22, 17]
-                      selectExpressions: DoubleColSubtractDoubleScalar(col 
1:double, val 9763215.5639) -> 7:double, DoubleColUnaryMinus(col 
8:double)(children: DoubleColSubtractDoubleScalar(col 1:double, val 
9763215.5639) -> 8:double) -> 9:double, FuncPowerDoubleToDouble(col 
10:double)(children: DoubleColDivideLongColumn(col 8:double, col 
13:bigint)(children: DoubleColSubtractDoubleColumn(col 4:double, col 
10:double)(children: DoubleColDivideLongColumn(col 8:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) 
-> 8:double) -> 10:double) -> 8:double, IfExprNullCondExpr(col 11:boolean, 
null, col 12:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 
11:boolean, LongColSubtractLongScalar(col 3:bigint, val 1) -> 12:bigint) -> 
13:bigint) -> 10:double) -> 8:double, DoubleColUnaryMinus(col 
10:double)(children: FuncPowerDoubleToDouble(col 14:double)(children: 
DoubleColDivideLongColumn(col 10:double, col 16:bigint)(children: 
DoubleColSubtract
 DoubleColumn(col 4:double, col 14:double)(children: 
DoubleColDivideLongColumn(col 10:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 10:double) -> 
14:double) -> 10:double, IfExprNullCondExpr(col 13:boolean, null, col 
15:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 13:boolean, 
LongColSubtractLongScalar(col 3:bigint, val 1) -> 15:bigint) -> 16:bigint) -> 
14:double) -> 10:double) -> 14:double, DoubleColMultiplyDoubleColumn(col 
10:double, col 17:double)(children: FuncPowerDoubleToDouble(col 
17:double)(children: DoubleColDivideLongColumn(col 10:double, col 
19:bigint)(children: DoubleColSubtractDoubleColumn(col 4:double, col 
17:double)(children: DoubleColDivideLongColumn(col 10:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) 
-> 10:double) -> 17:double) -> 10:double, IfExprNullCondExpr(col 16:boolean, 
null, col 18:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 
16:boo
 lean, LongColSubtractLongScalar(col 3:bigint, val 1) -> 18:bigint) -> 
19:bigint) -> 17:double) -> 10:double, CastLongToDouble(col 3:bigint) -> 
17:double) -> 20:double, DoubleScalarDivideDoubleColumn(val 9763215.5639, col 
1:double) -> 10:double, DecimalColDivideDecimalScalar(col 21:decimal(19,0), val 
-1.389)(children: CastLongToDecimal(col 3:bigint) -> 21:decimal(19,0)) -> 
22:decimal(28,6), FuncPowerDoubleToDouble(col 23:double)(children: 
DoubleColDivideLongColumn(col 17:double, col 25:bigint)(children: 
DoubleColSubtractDoubleColumn(col 4:double, col 23:double)(children: 
DoubleColDivideLongColumn(col 17:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 17:double) -> 
23:double) -> 17:double, IfExprNullCondExpr(col 19:boolean, null, col 
24:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 19:boolean, 
LongColSubtractLongScalar(col 3:bigint, val 1) -> 24:bigint) -> 25:bigint) -> 
23:double) -> 17:double
+                      projectedOutputColumnNums: [0, 1, 2, 7, 9, 3, 17, 26, 
36, 6, 37, 39, 47]
+                      selectExpressions: DoubleColSubtractDoubleScalar(col 
1:double, val 9763215.5639) -> 7:double, DoubleColUnaryMinus(col 
8:double)(children: DoubleColSubtractDoubleScalar(col 1:double, val 
9763215.5639) -> 8:double) -> 9:double, FuncPowerDoubleToDouble(col 
16:double)(children: DoubleColDivideLongColumn(col 12:double, col 
15:bigint)(children: DoubleColSubtractDoubleColumn(col 4:double, col 
11:double)(children: DoubleColDivideLongColumn(col 10:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) 
-> 10:double) -> 11:double) -> 12:double, IfExprNullCondExpr(col 13:boolean, 
null, col 14:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 
13:boolean, LongColSubtractLongScalar(col 3:bigint, val 1) -> 14:bigint) -> 
15:bigint) -> 16:double) -> 17:double, DoubleColUnaryMinus(col 
25:double)(children: FuncPowerDoubleToDouble(col 24:double)(children: 
DoubleColDivideLongColumn(col 20:double, col 23:bigint)(children: DoubleColSub
 tractDoubleColumn(col 4:double, col 19:double)(children: 
DoubleColDivideLongColumn(col 18:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 18:double) -> 
19:double) -> 20:double, IfExprNullCondExpr(col 21:boolean, null, col 
22:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 21:boolean, 
LongColSubtractLongScalar(col 3:bigint, val 1) -> 22:bigint) -> 23:bigint) -> 
24:double) -> 25:double) -> 26:double, DoubleColMultiplyDoubleColumn(col 
34:double, col 35:double)(children: FuncPowerDoubleToDouble(col 
33:double)(children: DoubleColDivideLongColumn(col 29:double, col 
32:bigint)(children: DoubleColSubtractDoubleColumn(col 4:double, col 
28:double)(children: DoubleColDivideLongColumn(col 27:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) 
-> 27:double) -> 28:double) -> 29:double, IfExprNullCondExpr(col 30:boolean, 
null, col 31:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 3
 0:boolean, LongColSubtractLongScalar(col 3:bigint, val 1) -> 31:bigint) -> 
32:bigint) -> 33:double) -> 34:double, CastLongToDouble(col 3:bigint) -> 
35:double) -> 36:double, DoubleScalarDivideDoubleColumn(val 9763215.5639, col 
1:double) -> 37:double, DecimalColDivideDecimalScalar(col 38:decimal(19,0), val 
-1.389)(children: CastLongToDecimal(col 3:bigint) -> 38:decimal(19,0)) -> 
39:decimal(28,6), FuncPowerDoubleToDouble(col 46:double)(children: 
DoubleColDivideLongColumn(col 42:double, col 45:bigint)(children: 
DoubleColSubtractDoubleColumn(col 4:double, col 41:double)(children: 
DoubleColDivideLongColumn(col 40:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 40:double) -> 
41:double) -> 42:double, IfExprNullCondExpr(col 43:boolean, null, col 
44:bigint)(children: LongColEqualLongScalar(col 3:bigint, val 1) -> 43:boolean, 
LongColSubtractLongScalar(col 3:bigint, val 1) -> 44:bigint) -> 45:bigint) -> 
46:double) -> 47:double
                   Statistics: Num rows: 1024 Data size: 307406 Basic stats: 
COMPLETE Column stats: COMPLETE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_17.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_17.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_17.q.out
index fe8aa35..98e92fe 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_17.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_17.q.out
@@ -88,8 +88,8 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [4, 6, 2, 8, 5, 3, 15, 
16, 14, 17, 19, 20, 22, 18]
-                          selectExpressions: DoubleColDivideDoubleColumn(col 
4:double, col 14:double)(children: col 4:float, CastLongToDouble(col 0:tinyint) 
-> 14:double) -> 15:double, LongColModuloLongColumn(col 2:bigint, col 
3:bigint)(children: col 2:int) -> 16:bigint, DoubleColUnaryMinus(col 5:double) 
-> 14:double, DoubleColAddDoubleColumn(col 5:double, col 18:double)(children: 
DoubleColDivideDoubleColumn(col 4:double, col 17:double)(children: col 4:float, 
CastLongToDouble(col 0:tinyint) -> 17:double) -> 18:double) -> 17:double, 
DoubleColDivideDoubleColumn(col 5:double, col 18:double)(children: 
CastLongToDouble(col 2:int) -> 18:double) -> 19:double, DoubleColUnaryMinus(col 
18:double)(children: DoubleColUnaryMinus(col 5:double) -> 18:double) -> 
20:double, DecimalScalarModuloDecimalColumn(val 9763215.5639, col 
21:decimal(19,0))(children: CastLongToDecimal(col 3:bigint) -> 
21:decimal(19,0)) -> 22:decimal(11,4), DoubleScalarAddDoubleColumn(val 2563.58, 
col 23:double)(children: Double
 ColUnaryMinus(col 18:double)(children: DoubleColUnaryMinus(col 5:double) -> 
18:double) -> 23:double) -> 18:double
+                          projectedOutputColumnNums: [4, 6, 2, 8, 5, 3, 15, 
16, 17, 20, 22, 24, 26, 29]
+                          selectExpressions: DoubleColDivideDoubleColumn(col 
4:double, col 14:double)(children: col 4:float, CastLongToDouble(col 0:tinyint) 
-> 14:double) -> 15:double, LongColModuloLongColumn(col 2:bigint, col 
3:bigint)(children: col 2:int) -> 16:bigint, DoubleColUnaryMinus(col 5:double) 
-> 17:double, DoubleColAddDoubleColumn(col 5:double, col 19:double)(children: 
DoubleColDivideDoubleColumn(col 4:double, col 18:double)(children: col 4:float, 
CastLongToDouble(col 0:tinyint) -> 18:double) -> 19:double) -> 20:double, 
DoubleColDivideDoubleColumn(col 5:double, col 21:double)(children: 
CastLongToDouble(col 2:int) -> 21:double) -> 22:double, DoubleColUnaryMinus(col 
23:double)(children: DoubleColUnaryMinus(col 5:double) -> 23:double) -> 
24:double, DecimalScalarModuloDecimalColumn(val 9763215.5639, col 
25:decimal(19,0))(children: CastLongToDecimal(col 3:bigint) -> 
25:decimal(19,0)) -> 26:decimal(11,4), DoubleScalarAddDoubleColumn(val 2563.58, 
col 28:double)(children: Double
 ColUnaryMinus(col 27:double)(children: DoubleColUnaryMinus(col 5:double) -> 
27:double) -> 28:double) -> 29:double
                       Statistics: Num rows: 4096 Data size: 1212930 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col5 (type: bigint), _col0 (type: 
float)
@@ -99,7 +99,7 @@ STAGE PLANS:
                             keyColumns: 3:bigint, 4:float
                             native: true
                             nativeConditionsMet: 
hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine 
tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, 
BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
-                            valueColumns: 6:string, 2:int, 8:timestamp, 
5:double, 15:double, 16:bigint, 14:double, 17:double, 19:double, 20:double, 
22:decimal(11,4), 18:double
+                            valueColumns: 6:string, 2:int, 8:timestamp, 
5:double, 15:double, 16:bigint, 17:double, 20:double, 22:double, 24:double, 
26:decimal(11,4), 29:double
                         Statistics: Num rows: 4096 Data size: 1212930 Basic 
stats: COMPLETE Column stats: COMPLETE
                         value expressions: _col1 (type: string), _col2 (type: 
int), _col3 (type: timestamp), _col4 (type: double), _col6 (type: double), 
_col7 (type: bigint), _col8 (type: double), _col9 (type: double), _col10 (type: 
double), _col11 (type: double), _col12 (type: decimal(11,4)), _col13 (type: 
double)
             Execution mode: vectorized, llap
@@ -118,7 +118,7 @@ STAGE PLANS:
                     includeColumns: [0, 1, 2, 3, 4, 5, 6, 8]
                     dataColumns: ctinyint:tinyint, csmallint:smallint, 
cint:int, cbigint:bigint, cfloat:float, cdouble:double, cstring1:string, 
cstring2:string, ctimestamp1:timestamp, ctimestamp2:timestamp, 
cboolean1:boolean, cboolean2:boolean
                     partitionColumnCount: 0
-                    scratchColumnTypeNames: [decimal(13,3), double, double, 
bigint, double, double, double, double, decimal(19,0), decimal(11,4), double]
+                    scratchColumnTypeNames: [decimal(13,3), double, double, 
bigint, double, double, double, double, double, double, double, double, 
decimal(19,0), decimal(11,4), double, double, double]
         Reducer 2 
             Execution mode: vectorized, llap
             Reduce Vectorization:

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_2.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_2.q.out
index 919d1c9..3b3fa7a 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_2.q.out
@@ -77,7 +77,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterTimestampColLessTimestampColumn(col 
8:timestamp, col 9:timestamp), FilterStringColLikeStringScalar(col 7:string, 
pattern b%), FilterDoubleColLessEqualDoubleScalar(col 4:float, val 
-5638.14990234375)), FilterExprAndExpr(children: 
FilterDoubleColLessDoubleColumn(col 5:double, col 13:double)(children: 
CastLongToDouble(col 0:tinyint) -> 13:double), FilterExprOrExpr(children: 
FilterDoubleColNotEqualDoubleScalar(col 13:double, val -10669.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double), 
FilterLongColLessLongScalar(col 2:int, val 359))))
+                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterTimestampColLessTimestampColumn(col 
8:timestamp, col 9:timestamp), FilterStringColLikeStringScalar(col 7:string, 
pattern b%), FilterDoubleColLessEqualDoubleScalar(col 4:float, val 
-5638.14990234375)), FilterExprAndExpr(children: 
FilterDoubleColLessDoubleColumn(col 5:double, col 13:double)(children: 
CastLongToDouble(col 0:tinyint) -> 13:double), FilterExprOrExpr(children: 
FilterDoubleColNotEqualDoubleScalar(col 14:double, val -10669.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 14:double), 
FilterLongColLessLongScalar(col 2:int, val 359))))
                     predicate: (((cdouble < UDFToDouble(ctinyint)) and 
((UDFToDouble(ctimestamp2) <> -10669.0D) or (cint < 359))) or ((ctimestamp1 < 
ctimestamp2) and (cstring2 like 'b%') and (cfloat <= -5638.15))) (type: boolean)
                     Statistics: Num rows: 4096 Data size: 719232 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -86,13 +86,13 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [1, 4, 3, 0, 5, 13, 16]
-                          selectExpressions: CastLongToDouble(col 3:bigint) -> 
13:double, DoubleColMultiplyDoubleColumn(col 14:double, col 
15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, 
CastLongToDouble(col 3:bigint) -> 15:double) -> 16:double
+                          projectedOutputColumnNums: [1, 4, 3, 0, 5, 15, 18]
+                          selectExpressions: CastLongToDouble(col 3:bigint) -> 
15:double, DoubleColMultiplyDoubleColumn(col 16:double, col 
17:double)(children: CastLongToDouble(col 3:bigint) -> 16:double, 
CastLongToDouble(col 3:bigint) -> 17:double) -> 18:double
                       Statistics: Num rows: 4096 Data size: 719232 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Group By Operator
                         aggregations: sum(_col0), count(_col0), sum(_col1), 
sum(_col6), sum(_col5), count(_col2), count(), min(_col3), sum(_col4), 
count(_col4)
                         Group By Vectorization:
-                            aggregators: VectorUDAFSumLong(col 1:smallint) -> 
bigint, VectorUDAFCount(col 1:smallint) -> bigint, VectorUDAFSumDouble(col 
4:float) -> double, VectorUDAFSumDouble(col 16:double) -> double, 
VectorUDAFSumDouble(col 13:double) -> double, VectorUDAFCount(col 3:bigint) -> 
bigint, VectorUDAFCountStar(*) -> bigint, VectorUDAFMinLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 5:double) -> double, VectorUDAFCount(col 
5:double) -> bigint
+                            aggregators: VectorUDAFSumLong(col 1:smallint) -> 
bigint, VectorUDAFCount(col 1:smallint) -> bigint, VectorUDAFSumDouble(col 
4:float) -> double, VectorUDAFSumDouble(col 18:double) -> double, 
VectorUDAFSumDouble(col 15:double) -> double, VectorUDAFCount(col 3:bigint) -> 
bigint, VectorUDAFCountStar(*) -> bigint, VectorUDAFMinLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 5:double) -> double, VectorUDAFCount(col 
5:double) -> bigint
                             className: VectorGroupByOperator
                             groupByMode: HASH
                             native: false
@@ -126,7 +126,7 @@ STAGE PLANS:
                     includeColumns: [0, 1, 2, 3, 4, 5, 7, 8, 9]
                     dataColumns: ctinyint:tinyint, csmallint:smallint, 
cint:int, cbigint:bigint, cfloat:float, cdouble:double, cstring1:string, 
cstring2:string, ctimestamp1:timestamp, ctimestamp2:timestamp, 
cboolean1:boolean, cboolean2:boolean
                     partitionColumnCount: 0
-                    scratchColumnTypeNames: [double, double, double, double]
+                    scratchColumnTypeNames: [double, double, double, double, 
double, double]
         Reducer 2 
             Execution mode: vectorized, llap
             Reduce Vectorization:
@@ -161,8 +161,8 @@ STAGE PLANS:
                   Select Vectorization:
                       className: VectorSelectOperator
                       native: true
-                      projectedOutputColumnNums: [11, 10, 12, 2, 14, 13, 15, 
6, 17, 16, 7, 20, 18, 19]
-                      selectExpressions: DoubleColDivideLongColumn(col 
10:double, col 1:bigint)(children: CastLongToDouble(col 0:bigint) -> 10:double) 
-> 11:double, DoubleColModuloDoubleScalar(col 12:double, val -563.0)(children: 
DoubleColDivideLongColumn(col 10:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 10:double) -> 12:double) -> 10:double, 
DoubleColAddDoubleScalar(col 13:double, val 762.0)(children: 
DoubleColDivideLongColumn(col 12:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 12:double) -> 13:double) -> 12:double, 
DoubleColDivideLongColumn(col 13:double, col 5:bigint)(children: 
DoubleColSubtractDoubleColumn(col 3:double, col 14:double)(children: 
DoubleColDivideLongColumn(col 13:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 13:double) -> 
14:double) -> 13:double) -> 14:double, DoubleColUnaryMinus(col 
15:double)(children: DoubleColDivideLongColumn(col 13:double, col 
5:bigint)(children: DoubleC
 olSubtractDoubleColumn(col 3:double, col 15:double)(children: 
DoubleColDivideLongColumn(col 13:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 13:double) -> 
15:double) -> 13:double) -> 15:double) -> 13:double, 
DoubleColSubtractDoubleColumn(col 2:double, col 16:double)(children: 
DoubleColDivideLongColumn(col 15:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 15:double) -> 16:double) -> 15:double, 
DoubleColUnaryMinus(col 16:double)(children: DoubleColSubtractDoubleColumn(col 
2:double, col 17:double)(children: DoubleColDivideLongColumn(col 16:double, col 
1:bigint)(children: CastLongToDouble(col 0:bigint) -> 16:double) -> 17:double) 
-> 16:double) -> 17:double, DoubleColSubtractDoubleScalar(col 18:double, val 
762.0)(children: DoubleColDivideLongColumn(col 16:double, col 
5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, col 
18:double)(children: DoubleColDivideLongColumn(col 16:double, col 
5:bigint)(children: Doub
 leColMultiplyDoubleColumn(col 4:double, col 4:double) -> 16:double) -> 
18:double) -> 16:double) -> 18:double) -> 16:double, 
DoubleColAddDoubleColumn(col 18:double, col 19:double)(children: 
DoubleColUnaryMinus(col 19:double)(children: DoubleColDivideLongColumn(col 
18:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 19:double)(children: DoubleColDivideLongColumn(col 18:double, col 
5:bigint)(children: DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) 
-> 18:double) -> 19:double) -> 18:double) -> 19:double) -> 18:double, 
CastLongToDouble(col 7:tinyint) -> 19:double) -> 20:double, 
DoubleColDivideLongColumn(col 8:double, col 9:bigint) -> 18:double, 
DoubleColSubtractDoubleColumn(col 22:double, col 2:double)(children: 
DoubleColAddDoubleColumn(col 19:double, col 21:double)(children: 
DoubleColUnaryMinus(col 21:double)(children: DoubleColDivideLongColumn(col 
19:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 21:double)(child
 ren: DoubleColDivideLongColumn(col 19:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 19:double) -> 
21:double) -> 19:double) -> 21:double) -> 19:double, CastLongToDouble(col 
7:tinyint) -> 21:double) -> 22:double) -> 19:double
+                      projectedOutputColumnNums: [11, 14, 17, 2, 21, 26, 29, 
6, 33, 38, 7, 45, 46, 54]
+                      selectExpressions: DoubleColDivideLongColumn(col 
10:double, col 1:bigint)(children: CastLongToDouble(col 0:bigint) -> 10:double) 
-> 11:double, DoubleColModuloDoubleScalar(col 13:double, val -563.0)(children: 
DoubleColDivideLongColumn(col 12:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 12:double) -> 13:double) -> 14:double, 
DoubleColAddDoubleScalar(col 16:double, val 762.0)(children: 
DoubleColDivideLongColumn(col 15:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 15:double) -> 16:double) -> 17:double, 
DoubleColDivideLongColumn(col 20:double, col 5:bigint)(children: 
DoubleColSubtractDoubleColumn(col 3:double, col 19:double)(children: 
DoubleColDivideLongColumn(col 18:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 18:double) -> 
19:double) -> 20:double) -> 21:double, DoubleColUnaryMinus(col 
25:double)(children: DoubleColDivideLongColumn(col 24:double, col 
5:bigint)(children: DoubleC
 olSubtractDoubleColumn(col 3:double, col 23:double)(children: 
DoubleColDivideLongColumn(col 22:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 22:double) -> 
23:double) -> 24:double) -> 25:double) -> 26:double, 
DoubleColSubtractDoubleColumn(col 2:double, col 28:double)(children: 
DoubleColDivideLongColumn(col 27:double, col 1:bigint)(children: 
CastLongToDouble(col 0:bigint) -> 27:double) -> 28:double) -> 29:double, 
DoubleColUnaryMinus(col 32:double)(children: DoubleColSubtractDoubleColumn(col 
2:double, col 31:double)(children: DoubleColDivideLongColumn(col 30:double, col 
1:bigint)(children: CastLongToDouble(col 0:bigint) -> 30:double) -> 31:double) 
-> 32:double) -> 33:double, DoubleColSubtractDoubleScalar(col 37:double, val 
762.0)(children: DoubleColDivideLongColumn(col 36:double, col 
5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, col 
35:double)(children: DoubleColDivideLongColumn(col 34:double, col 
5:bigint)(children: Doub
 leColMultiplyDoubleColumn(col 4:double, col 4:double) -> 34:double) -> 
35:double) -> 36:double) -> 37:double) -> 38:double, 
DoubleColAddDoubleColumn(col 43:double, col 44:double)(children: 
DoubleColUnaryMinus(col 42:double)(children: DoubleColDivideLongColumn(col 
41:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 40:double)(children: DoubleColDivideLongColumn(col 39:double, col 
5:bigint)(children: DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) 
-> 39:double) -> 40:double) -> 41:double) -> 42:double) -> 43:double, 
CastLongToDouble(col 7:tinyint) -> 44:double) -> 45:double, 
DoubleColDivideLongColumn(col 8:double, col 9:bigint) -> 46:double, 
DoubleColSubtractDoubleColumn(col 53:double, col 2:double)(children: 
DoubleColAddDoubleColumn(col 51:double, col 52:double)(children: 
DoubleColUnaryMinus(col 50:double)(children: DoubleColDivideLongColumn(col 
49:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 48:double)(child
 ren: DoubleColDivideLongColumn(col 47:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 47:double) -> 
48:double) -> 49:double) -> 50:double) -> 51:double, CastLongToDouble(col 
7:tinyint) -> 52:double) -> 53:double) -> 54:double
                   Statistics: Num rows: 1 Data size: 108 Basic stats: COMPLETE 
Column stats: COMPLETE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_3.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_3.q.out
index b998692..824e93c 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_3.q.out
@@ -82,7 +82,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessEqualDoubleColumn(col 13:float, 
col 4:float)(children: CastLongToFloatViaLongToDouble(col 2:int) -> 13:float), 
FilterDecimalColNotEqualDecimalScalar(col 14:decimal(22,3), val 
79.553)(children: CastLongToDecimal(col 3:bigint) -> 14:decimal(22,3)), 
FilterDoubleColEqualDoubleScalar(col 13:double, val -29071.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleColumn(col 13:double, 
col 5:double)(children: CastLongToDouble(col 3:bigint) -> 13:double), 
FilterDecimalColGreaterEqualDecimalScalar(col 15:decimal(8,3), val 
79.553)(children: CastLongToDecimal(col 1:smallint) -> 15:decimal(8,3)), 
FilterTimestampColGreaterTimestampColumn(col 8:timestamp, col 9:timestamp)))
+                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessEqualDoubleColumn(col 13:float, 
col 4:float)(children: CastLongToFloatViaLongToDouble(col 2:int) -> 13:float), 
FilterDecimalColNotEqualDecimalScalar(col 14:decimal(22,3), val 
79.553)(children: CastLongToDecimal(col 3:bigint) -> 14:decimal(22,3)), 
FilterDoubleColEqualDoubleScalar(col 15:double, val -29071.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 15:double)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleColumn(col 16:double, 
col 5:double)(children: CastLongToDouble(col 3:bigint) -> 16:double), 
FilterDecimalColGreaterEqualDecimalScalar(col 17:decimal(8,3), val 
79.553)(children: CastLongToDecimal(col 1:smallint) -> 17:decimal(8,3)), 
FilterTimestampColGreaterTimestampColumn(col 8:timestamp, col 9:timestamp)))
                     predicate: (((UDFToDouble(cbigint) > cdouble) and (CAST( 
csmallint AS decimal(8,3)) >= 79.553) and (ctimestamp1 > ctimestamp2)) or 
((UDFToFloat(cint) <= cfloat) and (CAST( cbigint AS decimal(22,3)) <> 79.553) 
and (UDFToDouble(ctimestamp2) = -29071.0D))) (type: boolean)
                     Statistics: Num rows: 2503 Data size: 260060 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -91,13 +91,13 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [1, 0, 4, 2, 13, 18, 16, 
20, 4, 17, 19, 23]
-                          selectExpressions: CastLongToDouble(col 1:smallint) 
-> 13:double, DoubleColMultiplyDoubleColumn(col 16:double, col 
17:double)(children: CastLongToDouble(col 1:smallint) -> 16:double, 
CastLongToDouble(col 1:smallint) -> 17:double) -> 18:double, 
CastLongToDouble(col 0:tinyint) -> 16:double, DoubleColMultiplyDoubleColumn(col 
17:double, col 19:double)(children: CastLongToDouble(col 0:tinyint) -> 
17:double, CastLongToDouble(col 0:tinyint) -> 19:double) -> 20:double, 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double)(children: col 
4:float, col 4:float) -> 17:double, CastLongToDouble(col 2:int) -> 19:double, 
DoubleColMultiplyDoubleColumn(col 21:double, col 22:double)(children: 
CastLongToDouble(col 2:int) -> 21:double, CastLongToDouble(col 2:int) -> 
22:double) -> 23:double
+                          projectedOutputColumnNums: [1, 0, 4, 2, 18, 21, 22, 
25, 4, 26, 27, 30]
+                          selectExpressions: CastLongToDouble(col 1:smallint) 
-> 18:double, DoubleColMultiplyDoubleColumn(col 19:double, col 
20:double)(children: CastLongToDouble(col 1:smallint) -> 19:double, 
CastLongToDouble(col 1:smallint) -> 20:double) -> 21:double, 
CastLongToDouble(col 0:tinyint) -> 22:double, DoubleColMultiplyDoubleColumn(col 
23:double, col 24:double)(children: CastLongToDouble(col 0:tinyint) -> 
23:double, CastLongToDouble(col 0:tinyint) -> 24:double) -> 25:double, 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double)(children: col 
4:float, col 4:float) -> 26:double, CastLongToDouble(col 2:int) -> 27:double, 
DoubleColMultiplyDoubleColumn(col 28:double, col 29:double)(children: 
CastLongToDouble(col 2:int) -> 28:double, CastLongToDouble(col 2:int) -> 
29:double) -> 30:double
                       Statistics: Num rows: 2503 Data size: 260060 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Group By Operator
                         aggregations: sum(_col5), sum(_col4), count(_col0), 
sum(_col7), sum(_col6), count(_col1), sum(_col9), sum(_col8), count(_col2), 
sum(_col2), sum(_col3), count(_col3), sum(_col11), sum(_col10)
                         Group By Vectorization:
-                            aggregators: VectorUDAFSumDouble(col 18:double) -> 
double, VectorUDAFSumDouble(col 13:double) -> double, VectorUDAFCount(col 
1:smallint) -> bigint, VectorUDAFSumDouble(col 20:double) -> double, 
VectorUDAFSumDouble(col 16:double) -> double, VectorUDAFCount(col 0:tinyint) -> 
bigint, VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFSumDouble(col 
4:double) -> double, VectorUDAFCount(col 4:float) -> bigint, 
VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumLong(col 2:int) -> 
bigint, VectorUDAFCount(col 2:int) -> bigint, VectorUDAFSumDouble(col 
23:double) -> double, VectorUDAFSumDouble(col 19:double) -> double
+                            aggregators: VectorUDAFSumDouble(col 21:double) -> 
double, VectorUDAFSumDouble(col 18:double) -> double, VectorUDAFCount(col 
1:smallint) -> bigint, VectorUDAFSumDouble(col 25:double) -> double, 
VectorUDAFSumDouble(col 22:double) -> double, VectorUDAFCount(col 0:tinyint) -> 
bigint, VectorUDAFSumDouble(col 26:double) -> double, VectorUDAFSumDouble(col 
4:double) -> double, VectorUDAFCount(col 4:float) -> bigint, 
VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumLong(col 2:int) -> 
bigint, VectorUDAFCount(col 2:int) -> bigint, VectorUDAFSumDouble(col 
30:double) -> double, VectorUDAFSumDouble(col 27:double) -> double
                             className: VectorGroupByOperator
                             groupByMode: HASH
                             native: false
@@ -131,7 +131,7 @@ STAGE PLANS:
                     includeColumns: [0, 1, 2, 3, 4, 5, 8, 9]
                     dataColumns: ctinyint:tinyint, csmallint:smallint, 
cint:int, cbigint:bigint, cfloat:float, cdouble:double, cstring1:string, 
cstring2:string, ctimestamp1:timestamp, ctimestamp2:timestamp, 
cboolean1:boolean, cboolean2:boolean
                     partitionColumnCount: 0
-                    scratchColumnTypeNames: [double, decimal(22,3), 
decimal(8,3), double, double, double, double, double, double, double, double]
+                    scratchColumnTypeNames: [double, decimal(22,3), double, 
double, decimal(8,3), double, double, double, double, double, double, double, 
double, double, double, double, double, double]
         Reducer 2 
             Execution mode: vectorized, llap
             Reduce Vectorization:
@@ -166,8 +166,8 @@ STAGE PLANS:
                   Select Vectorization:
                       className: VectorSelectOperator
                       native: true
-                      projectedOutputColumnNums: [14, 19, 15, 23, 26, 29, 22, 
32, 40, 9, 43, 35, 53, 54, 46, 59]
-                      selectExpressions: FuncPowerDoubleToDouble(col 
15:double)(children: DoubleColDivideLongColumn(col 14:double, col 
18:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
15:double)(children: DoubleColDivideLongColumn(col 14:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 14:double) -> 15:double) -> 14:double, IfExprNullCondExpr(col 16:boolean, 
null, col 17:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
16:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 17:bigint) -> 
18:bigint) -> 15:double) -> 14:double, DoubleColSubtractDoubleScalar(col 
15:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
19:double)(children: DoubleColDivideLongColumn(col 15:double, col 
21:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
19:double)(children: DoubleColDivideLongColumn(col 15:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 15
 :double) -> 19:double) -> 15:double, IfExprNullCondExpr(col 18:boolean, null, 
col 20:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
18:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 20:bigint) -> 
21:bigint) -> 19:double) -> 15:double) -> 19:double, 
FuncPowerDoubleToDouble(col 22:double)(children: DoubleColDivideLongColumn(col 
15:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 22:double)(children: DoubleColDivideLongColumn(col 15:double, col 
5:bigint)(children: DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) 
-> 15:double) -> 22:double) -> 15:double) -> 22:double) -> 15:double, 
DoubleColMultiplyDoubleColumn(col 22:double, col 26:double)(children: 
FuncPowerDoubleToDouble(col 23:double)(children: DoubleColDivideLongColumn(col 
22:double, col 25:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 23:double)(children: DoubleColDivideLongColumn(col 22:double, col 
2:bigint)(children: DoubleColMultiplyDouble
 Column(col 1:double, col 1:double) -> 22:double) -> 23:double) -> 22:double, 
IfExprNullCondExpr(col 21:boolean, null, col 24:bigint)(children: 
LongColEqualLongScalar(col 2:bigint, val 1) -> 21:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 24:bigint) -> 25:bigint) -> 
23:double) -> 22:double, DoubleColSubtractDoubleScalar(col 23:double, val 
10.175)(children: FuncPowerDoubleToDouble(col 26:double)(children: 
DoubleColDivideLongColumn(col 23:double, col 28:bigint)(children: 
DoubleColSubtractDoubleColumn(col 0:double, col 26:double)(children: 
DoubleColDivideLongColumn(col 23:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 23:double) -> 
26:double) -> 23:double, IfExprNullCondExpr(col 25:boolean, null, col 
27:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 25:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 27:bigint) -> 28:bigint) -> 
26:double) -> 23:double) -> 26:double) -> 23:double, DoubleColUnaryMinus(
 col 22:double)(children: FuncPowerDoubleToDouble(col 26:double)(children: 
DoubleColDivideLongColumn(col 22:double, col 5:bigint)(children: 
DoubleColSubtractDoubleColumn(col 3:double, col 26:double)(children: 
DoubleColDivideLongColumn(col 22:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 22:double) -> 
26:double) -> 22:double) -> 26:double) -> 22:double) -> 26:double, 
DoubleColModuloDoubleScalar(col 22:double, val 79.553)(children: 
FuncPowerDoubleToDouble(col 29:double)(children: DoubleColDivideLongColumn(col 
22:double, col 31:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 29:double)(children: DoubleColDivideLongColumn(col 22:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 22:double) -> 29:double) -> 22:double, IfExprNullCondExpr(col 28:boolean, 
null, col 30:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
28:boolean, LongColSubtractLongScalar(col 2:bigint, val
  1) -> 30:bigint) -> 31:bigint) -> 29:double) -> 22:double) -> 29:double, 
DoubleColUnaryMinus(col 32:double)(children: DoubleColMultiplyDoubleColumn(col 
22:double, col 35:double)(children: FuncPowerDoubleToDouble(col 
32:double)(children: DoubleColDivideLongColumn(col 22:double, col 
34:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
32:double)(children: DoubleColDivideLongColumn(col 22:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 22:double) -> 32:double) -> 22:double, IfExprNullCondExpr(col 31:boolean, 
null, col 33:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
31:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 33:bigint) -> 
34:bigint) -> 32:double) -> 22:double, DoubleColSubtractDoubleScalar(col 
32:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
35:double)(children: DoubleColDivideLongColumn(col 32:double, col 
37:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 3
 5:double)(children: DoubleColDivideLongColumn(col 32:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 32:double) -> 35:double) -> 32:double, IfExprNullCondExpr(col 34:boolean, 
null, col 36:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
34:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 36:bigint) -> 
37:bigint) -> 35:double) -> 32:double) -> 35:double) -> 32:double) -> 
22:double, FuncPowerDoubleToDouble(col 35:double)(children: 
DoubleColDivideLongColumn(col 32:double, col 39:bigint)(children: 
DoubleColSubtractDoubleColumn(col 6:double, col 35:double)(children: 
DoubleColDivideLongColumn(col 32:double, col 8:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 7:double, col 7:double) -> 32:double) -> 
35:double) -> 32:double, IfExprNullCondExpr(col 37:boolean, null, col 
38:bigint)(children: LongColEqualLongScalar(col 8:bigint, val 1) -> 37:boolean, 
LongColSubtractLongScalar(col 8:bigint, val 1) -> 38:bigint) -> 39:b
 igint) -> 35:double) -> 32:double, DoubleColUnaryMinus(col 
35:double)(children: FuncPowerDoubleToDouble(col 40:double)(children: 
DoubleColDivideLongColumn(col 35:double, col 42:bigint)(children: 
DoubleColSubtractDoubleColumn(col 0:double, col 40:double)(children: 
DoubleColDivideLongColumn(col 35:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 35:double) -> 
40:double) -> 35:double, IfExprNullCondExpr(col 39:boolean, null, col 
41:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 39:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 41:bigint) -> 42:bigint) -> 
40:double) -> 35:double) -> 40:double, DoubleColDivideDoubleColumn(col 
35:double, col 46:double)(children: DoubleColUnaryMinus(col 
43:double)(children: DoubleColMultiplyDoubleColumn(col 35:double, col 
46:double)(children: FuncPowerDoubleToDouble(col 43:double)(children: 
DoubleColDivideLongColumn(col 35:double, col 45:bigint)(children: 
DoubleColSubtractDoubleColum
 n(col 0:double, col 43:double)(children: DoubleColDivideLongColumn(col 
35:double, col 2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, 
col 1:double) -> 35:double) -> 43:double) -> 35:double, IfExprNullCondExpr(col 
42:boolean, null, col 44:bigint)(children: LongColEqualLongScalar(col 2:bigint, 
val 1) -> 42:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 
44:bigint) -> 45:bigint) -> 43:double) -> 35:double, 
DoubleColSubtractDoubleScalar(col 43:double, val 10.175)(children: 
FuncPowerDoubleToDouble(col 46:double)(children: DoubleColDivideLongColumn(col 
43:double, col 48:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 46:double)(children: DoubleColDivideLongColumn(col 43:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 43:double) -> 46:double) -> 43:double, IfExprNullCondExpr(col 45:boolean, 
null, col 47:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
45:boolean, LongColSubtractLongSca
 lar(col 2:bigint, val 1) -> 47:bigint) -> 48:bigint) -> 46:double) -> 
43:double) -> 46:double) -> 43:double) -> 35:double, 
DoubleColSubtractDoubleScalar(col 43:double, val 10.175)(children: 
FuncPowerDoubleToDouble(col 46:double)(children: DoubleColDivideLongColumn(col 
43:double, col 50:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 46:double)(children: DoubleColDivideLongColumn(col 43:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 43:double) -> 46:double) -> 43:double, IfExprNullCondExpr(col 48:boolean, 
null, col 49:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
48:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 49:bigint) -> 
50:bigint) -> 46:double) -> 43:double) -> 46:double) -> 43:double, 
DoubleColUnaryMinus(col 46:double)(children: DoubleColSubtractDoubleScalar(col 
35:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
46:double)(children: DoubleColDivideLongColumn(col 35:double, 
 col 52:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
46:double)(children: DoubleColDivideLongColumn(col 35:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 35:double) -> 46:double) -> 35:double, IfExprNullCondExpr(col 50:boolean, 
null, col 51:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
50:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 51:bigint) -> 
52:bigint) -> 46:double) -> 35:double) -> 46:double) -> 35:double, 
DoubleColDivideLongColumn(col 46:double, col 11:bigint)(children: 
CastLongToDouble(col 10:bigint) -> 46:double) -> 53:double, 
DoubleScalarSubtractDoubleColumn(val -3728.0, col 46:double)(children: 
FuncPowerDoubleToDouble(col 54:double)(children: DoubleColDivideLongColumn(col 
46:double, col 56:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 54:double)(children: DoubleColDivideLongColumn(col 46:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:
 double, col 1:double) -> 46:double) -> 54:double) -> 46:double, 
IfExprNullCondExpr(col 52:boolean, null, col 55:bigint)(children: 
LongColEqualLongScalar(col 2:bigint, val 1) -> 52:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 55:bigint) -> 56:bigint) -> 
54:double) -> 46:double) -> 54:double, FuncPowerDoubleToDouble(col 
57:double)(children: DoubleColDivideLongColumn(col 46:double, col 
11:bigint)(children: DoubleColSubtractDoubleColumn(col 12:double, col 
57:double)(children: DoubleColDivideLongColumn(col 46:double, col 
11:bigint)(children: DoubleColMultiplyDoubleColumn(col 13:double, col 
13:double) -> 46:double) -> 57:double) -> 46:double) -> 57:double) -> 
46:double, DoubleColDivideDoubleColumn(col 58:double, col 57:double)(children: 
DoubleColDivideLongColumn(col 57:double, col 11:bigint)(children: 
CastLongToDouble(col 10:bigint) -> 57:double) -> 58:double, 
FuncPowerDoubleToDouble(col 59:double)(children: DoubleColDivideLongColumn(col 
57:double, col 61:bigint)(children: D
 oubleColSubtractDoubleColumn(col 6:double, col 59:double)(children: 
DoubleColDivideLongColumn(col 57:double, col 8:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 7:double, col 7:double) -> 57:double) -> 
59:double) -> 57:double, IfExprNullCondExpr(col 56:boolean, null, col 
60:bigint)(children: LongColEqualLongScalar(col 8:bigint, val 1) -> 56:boolean, 
LongColSubtractLongScalar(col 8:bigint, val 1) -> 60:bigint) -> 61:bigint) -> 
59:double) -> 57:double) -> 59:double
+                      projectedOutputColumnNums: [21, 30, 35, 53, 59, 68, 87, 
95, 104, 9, 133, 143, 145, 154, 159, 170]
+                      selectExpressions: FuncPowerDoubleToDouble(col 
20:double)(children: DoubleColDivideLongColumn(col 16:double, col 
19:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
15:double)(children: DoubleColDivideLongColumn(col 14:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 14:double) -> 15:double) -> 16:double, IfExprNullCondExpr(col 17:boolean, 
null, col 18:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
17:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 18:bigint) -> 
19:bigint) -> 20:double) -> 21:double, DoubleColSubtractDoubleScalar(col 
29:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
28:double)(children: DoubleColDivideLongColumn(col 24:double, col 
27:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
23:double)(children: DoubleColDivideLongColumn(col 22:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 22
 :double) -> 23:double) -> 24:double, IfExprNullCondExpr(col 25:boolean, null, 
col 26:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
25:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 26:bigint) -> 
27:bigint) -> 28:double) -> 29:double) -> 30:double, 
FuncPowerDoubleToDouble(col 34:double)(children: DoubleColDivideLongColumn(col 
33:double, col 5:bigint)(children: DoubleColSubtractDoubleColumn(col 3:double, 
col 32:double)(children: DoubleColDivideLongColumn(col 31:double, col 
5:bigint)(children: DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) 
-> 31:double) -> 32:double) -> 33:double) -> 34:double) -> 35:double, 
DoubleColMultiplyDoubleColumn(col 43:double, col 52:double)(children: 
FuncPowerDoubleToDouble(col 42:double)(children: DoubleColDivideLongColumn(col 
38:double, col 41:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 37:double)(children: DoubleColDivideLongColumn(col 36:double, col 
2:bigint)(children: DoubleColMultiplyDouble
 Column(col 1:double, col 1:double) -> 36:double) -> 37:double) -> 38:double, 
IfExprNullCondExpr(col 39:boolean, null, col 40:bigint)(children: 
LongColEqualLongScalar(col 2:bigint, val 1) -> 39:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 40:bigint) -> 41:bigint) -> 
42:double) -> 43:double, DoubleColSubtractDoubleScalar(col 51:double, val 
10.175)(children: FuncPowerDoubleToDouble(col 50:double)(children: 
DoubleColDivideLongColumn(col 46:double, col 49:bigint)(children: 
DoubleColSubtractDoubleColumn(col 0:double, col 45:double)(children: 
DoubleColDivideLongColumn(col 44:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 44:double) -> 
45:double) -> 46:double, IfExprNullCondExpr(col 47:boolean, null, col 
48:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 47:boolean, 
LongColSubtractLongScalar(col 2:bigint, val 1) -> 48:bigint) -> 49:bigint) -> 
50:double) -> 51:double) -> 52:double) -> 53:double, DoubleColUnaryMinus(
 col 58:double)(children: FuncPowerDoubleToDouble(col 57:double)(children: 
DoubleColDivideLongColumn(col 56:double, col 5:bigint)(children: 
DoubleColSubtractDoubleColumn(col 3:double, col 55:double)(children: 
DoubleColDivideLongColumn(col 54:double, col 5:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 4:double, col 4:double) -> 54:double) -> 
55:double) -> 56:double) -> 57:double) -> 58:double) -> 59:double, 
DoubleColModuloDoubleScalar(col 67:double, val 79.553)(children: 
FuncPowerDoubleToDouble(col 66:double)(children: DoubleColDivideLongColumn(col 
62:double, col 65:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, 
col 61:double)(children: DoubleColDivideLongColumn(col 60:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 60:double) -> 61:double) -> 62:double, IfExprNullCondExpr(col 63:boolean, 
null, col 64:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
63:boolean, LongColSubtractLongScalar(col 2:bigint, val
  1) -> 64:bigint) -> 65:bigint) -> 66:double) -> 67:double) -> 68:double, 
DoubleColUnaryMinus(col 86:double)(children: DoubleColMultiplyDoubleColumn(col 
76:double, col 85:double)(children: FuncPowerDoubleToDouble(col 
75:double)(children: DoubleColDivideLongColumn(col 71:double, col 
74:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
70:double)(children: DoubleColDivideLongColumn(col 69:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 69:double) -> 70:double) -> 71:double, IfExprNullCondExpr(col 72:boolean, 
null, col 73:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
72:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 73:bigint) -> 
74:bigint) -> 75:double) -> 76:double, DoubleColSubtractDoubleScalar(col 
84:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
83:double)(children: DoubleColDivideLongColumn(col 79:double, col 
82:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 7
 8:double)(children: DoubleColDivideLongColumn(col 77:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 77:double) -> 78:double) -> 79:double, IfExprNullCondExpr(col 80:boolean, 
null, col 81:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
80:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 81:bigint) -> 
82:bigint) -> 83:double) -> 84:double) -> 85:double) -> 86:double) -> 
87:double, FuncPowerDoubleToDouble(col 94:double)(children: 
DoubleColDivideLongColumn(col 90:double, col 93:bigint)(children: 
DoubleColSubtractDoubleColumn(col 6:double, col 89:double)(children: 
DoubleColDivideLongColumn(col 88:double, col 8:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 7:double, col 7:double) -> 88:double) -> 
89:double) -> 90:double, IfExprNullCondExpr(col 91:boolean, null, col 
92:bigint)(children: LongColEqualLongScalar(col 8:bigint, val 1) -> 91:boolean, 
LongColSubtractLongScalar(col 8:bigint, val 1) -> 92:bigint) -> 93:b
 igint) -> 94:double) -> 95:double, DoubleColUnaryMinus(col 
103:double)(children: FuncPowerDoubleToDouble(col 102:double)(children: 
DoubleColDivideLongColumn(col 98:double, col 101:bigint)(children: 
DoubleColSubtractDoubleColumn(col 0:double, col 97:double)(children: 
DoubleColDivideLongColumn(col 96:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 96:double) -> 
97:double) -> 98:double, IfExprNullCondExpr(col 99:boolean, null, col 
100:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
99:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 100:bigint) -> 
101:bigint) -> 102:double) -> 103:double) -> 104:double, 
DoubleColDivideDoubleColumn(col 123:double, col 132:double)(children: 
DoubleColUnaryMinus(col 122:double)(children: DoubleColMultiplyDoubleColumn(col 
112:double, col 121:double)(children: FuncPowerDoubleToDouble(col 
111:double)(children: DoubleColDivideLongColumn(col 107:double, col 
110:bigint)(children: DoubleColSu
 btractDoubleColumn(col 0:double, col 106:double)(children: 
DoubleColDivideLongColumn(col 105:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 105:double) -> 
106:double) -> 107:double, IfExprNullCondExpr(col 108:boolean, null, col 
109:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
108:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 109:bigint) -> 
110:bigint) -> 111:double) -> 112:double, DoubleColSubtractDoubleScalar(col 
120:double, val 10.175)(children: FuncPowerDoubleToDouble(col 
119:double)(children: DoubleColDivideLongColumn(col 115:double, col 
118:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
114:double)(children: DoubleColDivideLongColumn(col 113:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 113:double) -> 114:double) -> 115:double, IfExprNullCondExpr(col 
116:boolean, null, col 117:bigint)(children: LongColEqualLongScalar(col 
2:bigint, val 
 1) -> 116:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 
117:bigint) -> 118:bigint) -> 119:double) -> 120:double) -> 121:double) -> 
122:double) -> 123:double, DoubleColSubtractDoubleScalar(col 131:double, val 
10.175)(children: FuncPowerDoubleToDouble(col 130:double)(children: 
DoubleColDivideLongColumn(col 126:double, col 129:bigint)(children: 
DoubleColSubtractDoubleColumn(col 0:double, col 125:double)(children: 
DoubleColDivideLongColumn(col 124:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 124:double) -> 
125:double) -> 126:double, IfExprNullCondExpr(col 127:boolean, null, col 
128:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
127:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 128:bigint) -> 
129:bigint) -> 130:double) -> 131:double) -> 132:double) -> 133:double, 
DoubleColUnaryMinus(col 142:double)(children: DoubleColSubtractDoubleScalar(col 
141:double, val 10.175)(children: FuncPowerDoubleToDoubl
 e(col 140:double)(children: DoubleColDivideLongColumn(col 136:double, col 
139:bigint)(children: DoubleColSubtractDoubleColumn(col 0:double, col 
135:double)(children: DoubleColDivideLongColumn(col 134:double, col 
2:bigint)(children: DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) 
-> 134:double) -> 135:double) -> 136:double, IfExprNullCondExpr(col 
137:boolean, null, col 138:bigint)(children: LongColEqualLongScalar(col 
2:bigint, val 1) -> 137:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) 
-> 138:bigint) -> 139:bigint) -> 140:double) -> 141:double) -> 142:double) -> 
143:double, DoubleColDivideLongColumn(col 144:double, col 11:bigint)(children: 
CastLongToDouble(col 10:bigint) -> 144:double) -> 145:double, 
DoubleScalarSubtractDoubleColumn(val -3728.0, col 153:double)(children: 
FuncPowerDoubleToDouble(col 152:double)(children: DoubleColDivideLongColumn(col 
148:double, col 151:bigint)(children: DoubleColSubtractDoubleColumn(col 
0:double, col 147:double)(children: DoubleCo
 lDivideLongColumn(col 146:double, col 2:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 1:double, col 1:double) -> 146:double) -> 
147:double) -> 148:double, IfExprNullCondExpr(col 149:boolean, null, col 
150:bigint)(children: LongColEqualLongScalar(col 2:bigint, val 1) -> 
149:boolean, LongColSubtractLongScalar(col 2:bigint, val 1) -> 150:bigint) -> 
151:bigint) -> 152:double) -> 153:double) -> 154:double, 
FuncPowerDoubleToDouble(col 158:double)(children: DoubleColDivideLongColumn(col 
157:double, col 11:bigint)(children: DoubleColSubtractDoubleColumn(col 
12:double, col 156:double)(children: DoubleColDivideLongColumn(col 155:double, 
col 11:bigint)(children: DoubleColMultiplyDoubleColumn(col 13:double, col 
13:double) -> 155:double) -> 156:double) -> 157:double) -> 158:double) -> 
159:double, DoubleColDivideDoubleColumn(col 161:double, col 
169:double)(children: DoubleColDivideLongColumn(col 160:double, col 
11:bigint)(children: CastLongToDouble(col 10:bigint) -> 160:double) -> 161:doubl
 e, FuncPowerDoubleToDouble(col 168:double)(children: 
DoubleColDivideLongColumn(col 164:double, col 167:bigint)(children: 
DoubleColSubtractDoubleColumn(col 6:double, col 163:double)(children: 
DoubleColDivideLongColumn(col 162:double, col 8:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 7:double, col 7:double) -> 162:double) -> 
163:double) -> 164:double, IfExprNullCondExpr(col 165:boolean, null, col 
166:bigint)(children: LongColEqualLongScalar(col 8:bigint, val 1) -> 
165:boolean, LongColSubtractLongScalar(col 8:bigint, val 1) -> 166:bigint) -> 
167:bigint) -> 168:double) -> 169:double) -> 170:double
                   Statistics: Num rows: 1 Data size: 128 Basic stats: COMPLETE 
Column stats: COMPLETE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_4.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_4.q.out
index 1a04ec2..c57f8c8 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_4.q.out
@@ -161,8 +161,8 @@ STAGE PLANS:
                   Select Vectorization:
                       className: VectorSelectOperator
                       native: true
-                      projectedOutputColumnNums: [0, 5, 6, 7, 9, 8, 11, 15, 
14, 13, 18, 4, 4, 19]
-                      selectExpressions: LongColMultiplyLongScalar(col 
0:bigint, val -563) -> 5:bigint, LongScalarAddLongColumn(val -3728, col 
0:bigint) -> 6:bigint, FuncPowerDoubleToDouble(col 8:double)(children: 
DoubleColDivideLongColumn(col 7:double, col 3:bigint)(children: 
DoubleColSubtractDoubleColumn(col 1:double, col 8:double)(children: 
DoubleColDivideLongColumn(col 7:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) -> 7:double) -> 
8:double) -> 7:double) -> 8:double) -> 7:double, DoubleColUnaryMinus(col 
8:double)(children: FuncPowerDoubleToDouble(col 9:double)(children: 
DoubleColDivideLongColumn(col 8:double, col 3:bigint)(children: 
DoubleColSubtractDoubleColumn(col 1:double, col 9:double)(children: 
DoubleColDivideLongColumn(col 8:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) -> 8:double) -> 
9:double) -> 8:double) -> 9:double) -> 8:double) -> 9:double, 
DoubleColDivideLongColumn(col 2:double, 
 col 3:bigint) -> 8:double, LongColModuloLongColumn(col 10:bigint, col 
0:bigint)(children: LongColMultiplyLongScalar(col 0:bigint, val -563) -> 
10:bigint) -> 11:bigint, DoubleColDivideDoubleColumn(col 13:double, col 
14:double)(children: CastLongToDouble(col 12:bigint)(children: 
LongColModuloLongColumn(col 10:bigint, col 0:bigint)(children: 
LongColMultiplyLongScalar(col 0:bigint, val -563) -> 10:bigint) -> 12:bigint) 
-> 13:double, DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 
14:double) -> 15:double, DoubleColDivideLongColumn(col 13:double, col 
3:bigint)(children: DoubleColSubtractDoubleColumn(col 1:double, col 
14:double)(children: DoubleColDivideLongColumn(col 13:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) 
-> 13:double) -> 14:double) -> 13:double) -> 14:double, DoubleColUnaryMinus(col 
17:double)(children: DoubleColDivideDoubleColumn(col 13:double, col 
16:double)(children: CastLongToDouble(col 12:bigint)(children: LongColModuloL
 ongColumn(col 10:bigint, col 0:bigint)(children: LongColMultiplyLongScalar(col 
0:bigint, val -563) -> 10:bigint) -> 12:bigint) -> 13:double, 
DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 16:double) -> 
17:double) -> 13:double, LongColSubtractLongColumn(col 10:bigint, col 
12:bigint)(children: LongScalarAddLongColumn(val -3728, col 0:bigint) -> 
10:bigint, LongColMultiplyLongScalar(col 0:bigint, val -563) -> 12:bigint) -> 
18:bigint, DoubleColMultiplyDoubleColumn(col 16:double, col 
17:double)(children: CastLongToDouble(col 4:tinyint) -> 16:double, 
DoubleColUnaryMinus(col 20:double)(children: DoubleColDivideDoubleColumn(col 
17:double, col 19:double)(children: CastLongToDouble(col 12:bigint)(children: 
LongColModuloLongColumn(col 10:bigint, col 0:bigint)(children: 
LongColMultiplyLongScalar(col 0:bigint, val -563) -> 10:bigint) -> 12:bigint) 
-> 17:double, DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 
19:double) -> 20:double) -> 17:double) -> 19:double
+                      projectedOutputColumnNums: [0, 5, 6, 11, 17, 18, 20, 25, 
29, 35, 38, 4, 4, 46]
+                      selectExpressions: LongColMultiplyLongScalar(col 
0:bigint, val -563) -> 5:bigint, LongScalarAddLongColumn(val -3728, col 
0:bigint) -> 6:bigint, FuncPowerDoubleToDouble(col 10:double)(children: 
DoubleColDivideLongColumn(col 9:double, col 3:bigint)(children: 
DoubleColSubtractDoubleColumn(col 1:double, col 8:double)(children: 
DoubleColDivideLongColumn(col 7:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) -> 7:double) -> 
8:double) -> 9:double) -> 10:double) -> 11:double, DoubleColUnaryMinus(col 
16:double)(children: FuncPowerDoubleToDouble(col 15:double)(children: 
DoubleColDivideLongColumn(col 14:double, col 3:bigint)(children: 
DoubleColSubtractDoubleColumn(col 1:double, col 13:double)(children: 
DoubleColDivideLongColumn(col 12:double, col 3:bigint)(children: 
DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) -> 12:double) -> 
13:double) -> 14:double) -> 15:double) -> 16:double) -> 17:double, 
DoubleColDivideLongColumn(
 col 2:double, col 3:bigint) -> 18:double, LongColModuloLongColumn(col 
19:bigint, col 0:bigint)(children: LongColMultiplyLongScalar(col 0:bigint, val 
-563) -> 19:bigint) -> 20:bigint, DoubleColDivideDoubleColumn(col 23:double, 
col 24:double)(children: CastLongToDouble(col 22:bigint)(children: 
LongColModuloLongColumn(col 21:bigint, col 0:bigint)(children: 
LongColMultiplyLongScalar(col 0:bigint, val -563) -> 21:bigint) -> 22:bigint) 
-> 23:double, DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 
24:double) -> 25:double, DoubleColDivideLongColumn(col 28:double, col 
3:bigint)(children: DoubleColSubtractDoubleColumn(col 1:double, col 
27:double)(children: DoubleColDivideLongColumn(col 26:double, col 
3:bigint)(children: DoubleColMultiplyDoubleColumn(col 2:double, col 2:double) 
-> 26:double) -> 27:double) -> 28:double) -> 29:double, DoubleColUnaryMinus(col 
34:double)(children: DoubleColDivideDoubleColumn(col 32:double, col 
33:double)(children: CastLongToDouble(col 31:bigint)(children:
  LongColModuloLongColumn(col 30:bigint, col 0:bigint)(children: 
LongColMultiplyLongScalar(col 0:bigint, val -563) -> 30:bigint) -> 31:bigint) 
-> 32:double, DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 
33:double) -> 34:double) -> 35:double, LongColSubtractLongColumn(col 36:bigint, 
col 37:bigint)(children: LongScalarAddLongColumn(val -3728, col 0:bigint) -> 
36:bigint, LongColMultiplyLongScalar(col 0:bigint, val -563) -> 37:bigint) -> 
38:bigint, DoubleColMultiplyDoubleColumn(col 39:double, col 
45:double)(children: CastLongToDouble(col 4:tinyint) -> 39:double, 
DoubleColUnaryMinus(col 44:double)(children: DoubleColDivideDoubleColumn(col 
42:double, col 43:double)(children: CastLongToDouble(col 41:bigint)(children: 
LongColModuloLongColumn(col 40:bigint, col 0:bigint)(children: 
LongColMultiplyLongScalar(col 0:bigint, val -563) -> 40:bigint) -> 41:bigint) 
-> 42:double, DoubleColDivideLongColumn(col 2:double, col 3:bigint) -> 
43:double) -> 44:double) -> 45:double) -> 46:double
                   Statistics: Num rows: 1 Data size: 104 Basic stats: COMPLETE 
Column stats: COMPLETE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_5.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_5.q.out
index 5d70025..8fe4156 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_5.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_5.q.out
@@ -154,8 +154,8 @@ STAGE PLANS:
                   Select Vectorization:
                       className: VectorSelectOperator
                       native: true
-                      projectedOutputColumnNums: [0, 5, 1, 9, 6, 2, 10, 7, 3, 
4, 11, 14]
-                      selectExpressions: LongColMultiplyLongScalar(col 0:int, 
val -75)(children: col 0:smallint) -> 5:int, DoubleColDivideDoubleColumn(col 
7:double, col 8:double)(children: CastLongToDouble(col 6:int)(children: 
LongColMultiplyLongScalar(col 0:int, val -75)(children: col 0:smallint) -> 
6:int) -> 7:double, CastLongToDouble(col 1:bigint) -> 8:double) -> 9:double, 
LongScalarMultiplyLongColumn(val 6981, col 0:int)(children: col 0:smallint) -> 
6:int, LongColUnaryMinus(col 2:smallint) -> 10:smallint, 
DoubleScalarModuloDoubleColumn(val 197.0, col 12:double)(children: 
DoubleColDivideDoubleColumn(col 7:double, col 8:double)(children: 
CastLongToDouble(col 11:int)(children: LongColMultiplyLongScalar(col 0:int, val 
-75)(children: col 0:smallint) -> 11:int) -> 7:double, CastLongToDouble(col 
1:bigint) -> 8:double) -> 12:double) -> 7:double, LongColUnaryMinus(col 
4:tinyint) -> 11:tinyint, LongColAddLongColumn(col 13:tinyint, col 
4:tinyint)(children: LongColUnaryMinus(col 4:tinyint) 
 -> 13:tinyint) -> 14:tinyint
+                      projectedOutputColumnNums: [0, 5, 1, 9, 10, 2, 11, 16, 
3, 4, 17, 19]
+                      selectExpressions: LongColMultiplyLongScalar(col 0:int, 
val -75)(children: col 0:smallint) -> 5:int, DoubleColDivideDoubleColumn(col 
7:double, col 8:double)(children: CastLongToDouble(col 6:int)(children: 
LongColMultiplyLongScalar(col 0:int, val -75)(children: col 0:smallint) -> 
6:int) -> 7:double, CastLongToDouble(col 1:bigint) -> 8:double) -> 9:double, 
LongScalarMultiplyLongColumn(val 6981, col 0:int)(children: col 0:smallint) -> 
10:int, LongColUnaryMinus(col 2:smallint) -> 11:smallint, 
DoubleScalarModuloDoubleColumn(val 197.0, col 15:double)(children: 
DoubleColDivideDoubleColumn(col 13:double, col 14:double)(children: 
CastLongToDouble(col 12:int)(children: LongColMultiplyLongScalar(col 0:int, val 
-75)(children: col 0:smallint) -> 12:int) -> 13:double, CastLongToDouble(col 
1:bigint) -> 14:double) -> 15:double) -> 16:double, LongColUnaryMinus(col 
4:tinyint) -> 17:tinyint, LongColAddLongColumn(col 18:tinyint, col 
4:tinyint)(children: LongColUnaryMinus(col 4:tin
 yint) -> 18:tinyint) -> 19:tinyint
                   Statistics: Num rows: 1 Data size: 64 Basic stats: COMPLETE 
Column stats: COMPLETE
                   File Output Operator
                     compressed: false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_7.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_7.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_7.q.out
index b44a5a4..83a3027 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_7.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_7.q.out
@@ -85,7 +85,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprAndExpr(children: 
FilterLongColNotEqualLongScalar(col 0:tinyint, val 0), 
FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleScalar(col 13:double, 
val -28800.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterLongColEqualLongColumn(col 0:int, col 2:int)(children: col 0:tinyint), 
FilterStringColLikeStringScalar(col 7:string, pattern ss)), 
FilterExprOrExpr(children: FilterDoubleColGreaterDoubleScalar(col 5:double, val 
988888.0), FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 
13:double, val -28815.0)(children: CastTimestampToDouble(col 9:timestamp) -> 
13:double), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 3569.0))))
+                        predicateExpression: FilterExprAndExpr(children: 
FilterLongColNotEqualLongScalar(col 0:tinyint, val 0), 
FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleScalar(col 13:double, 
val -28800.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterLongColEqualLongColumn(col 0:int, col 2:int)(children: col 0:tinyint), 
FilterStringColLikeStringScalar(col 7:string, pattern ss)), 
FilterExprOrExpr(children: FilterDoubleColGreaterDoubleScalar(col 5:double, val 
988888.0), FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 
14:double, val -28815.0)(children: CastTimestampToDouble(col 9:timestamp) -> 
14:double), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 3569.0))))
                     predicate: (((UDFToDouble(ctimestamp1) <= -28800.0D) or 
(UDFToInteger(ctinyint) = cint) or (cstring2 like 'ss')) and ((cdouble > 
988888.0D) or ((UDFToDouble(ctimestamp2) > -28815.0D) and (cdouble <= 
3569.0D))) and (ctinyint <> 0Y)) (type: boolean)
                     Statistics: Num rows: 5461 Data size: 1342196 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -94,15 +94,15 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [10, 3, 1, 0, 8, 6, 14, 
15, 16, 17, 19, 20, 18, 21, 23]
-                          selectExpressions: LongColAddLongColumn(col 
3:bigint, col 3:bigint) -> 14:bigint, LongColModuloLongScalar(col 1:int, val 
-257)(children: col 1:smallint) -> 15:int, LongColUnaryMinus(col 1:smallint) -> 
16:smallint, LongColUnaryMinus(col 0:tinyint) -> 17:tinyint, 
LongColAddLongScalar(col 18:int, val 17)(children: LongColUnaryMinus(col 
0:tinyint) -> 18:tinyint) -> 19:int, LongColMultiplyLongColumn(col 3:bigint, 
col 18:bigint)(children: LongColUnaryMinus(col 1:smallint) -> 18:smallint) -> 
20:bigint, LongColModuloLongColumn(col 2:int, col 1:int)(children: col 
1:smallint) -> 18:int, LongColUnaryMinus(col 0:tinyint) -> 21:tinyint, 
LongColModuloLongColumn(col 22:tinyint, col 0:tinyint)(children: 
LongColUnaryMinus(col 0:tinyint) -> 22:tinyint) -> 23:tinyint
+                          projectedOutputColumnNums: [10, 3, 1, 0, 8, 6, 15, 
16, 17, 18, 20, 22, 23, 24, 26]
+                          selectExpressions: LongColAddLongColumn(col 
3:bigint, col 3:bigint) -> 15:bigint, LongColModuloLongScalar(col 1:int, val 
-257)(children: col 1:smallint) -> 16:int, LongColUnaryMinus(col 1:smallint) -> 
17:smallint, LongColUnaryMinus(col 0:tinyint) -> 18:tinyint, 
LongColAddLongScalar(col 19:int, val 17)(children: LongColUnaryMinus(col 
0:tinyint) -> 19:tinyint) -> 20:int, LongColMultiplyLongColumn(col 3:bigint, 
col 21:bigint)(children: LongColUnaryMinus(col 1:smallint) -> 21:smallint) -> 
22:bigint, LongColModuloLongColumn(col 2:int, col 1:int)(children: col 
1:smallint) -> 23:int, LongColUnaryMinus(col 0:tinyint) -> 24:tinyint, 
LongColModuloLongColumn(col 25:tinyint, col 0:tinyint)(children: 
LongColUnaryMinus(col 0:tinyint) -> 25:tinyint) -> 26:tinyint
                       Statistics: Num rows: 5461 Data size: 923616 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: boolean), _col1 (type: 
bigint), _col2 (type: smallint), _col3 (type: tinyint), _col4 (type: 
timestamp), _col5 (type: string), _col6 (type: bigint), _col7 (type: int), 
_col8 (type: smallint), _col9 (type: tinyint), _col10 (type: int), _col11 
(type: bigint), _col12 (type: int), _col13 (type: tinyint), _col14 (type: 
tinyint)
                         sort order: +++++++++++++++
                         Reduce Sink Vectorization:
                             className: VectorReduceSinkObjectHashOperator
-                            keyColumns: 10:boolean, 3:bigint, 1:smallint, 
0:tinyint, 8:timestamp, 6:string, 14:bigint, 15:int, 16:smallint, 17:tinyint, 
19:int, 20:bigint, 18:int, 21:tinyint, 23:tinyint
+                            keyColumns: 10:boolean, 3:bigint, 1:smallint, 
0:tinyint, 8:timestamp, 6:string, 15:bigint, 16:int, 17:smallint, 18:tinyint, 
20:int, 22:bigint, 23:int, 24:tinyint, 26:tinyint
                             native: true
                             nativeConditionsMet: 
hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine 
tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, 
BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
                         Statistics: Num rows: 5461 Data size: 923616 Basic 
stats: COMPLETE Column stats: COMPLETE
@@ -123,7 +123,7 @@ STAGE PLANS:
                     includeColumns: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10]
                     dataColumns: ctinyint:tinyint, csmallint:smallint, 
cint:int, cbigint:bigint, cfloat:float, cdouble:double, cstring1:string, 
cstring2:string, ctimestamp1:timestamp, ctimestamp2:timestamp, 
cboolean1:boolean, cboolean2:boolean
                     partitionColumnCount: 0
-                    scratchColumnTypeNames: [double, bigint, bigint, bigint, 
bigint, bigint, bigint, bigint, bigint, bigint, bigint]
+                    scratchColumnTypeNames: [double, double, bigint, bigint, 
bigint, bigint, bigint, bigint, bigint, bigint, bigint, bigint, bigint, bigint]
         Reducer 2 
             Execution mode: vectorized, llap
             Reduce Vectorization:
@@ -338,7 +338,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprAndExpr(children: 
FilterLongColNotEqualLongScalar(col 0:tinyint, val 0), 
FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleScalar(col 13:double, 
val -28800.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterLongColEqualLongColumn(col 0:int, col 2:int)(children: col 0:tinyint), 
FilterStringColLikeStringScalar(col 7:string, pattern ss)), 
FilterExprOrExpr(children: FilterDoubleColGreaterDoubleScalar(col 5:double, val 
988888.0), FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 
13:double, val -28792.315)(children: CastTimestampToDouble(col 9:timestamp) -> 
13:double), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 3569.0))))
+                        predicateExpression: FilterExprAndExpr(children: 
FilterLongColNotEqualLongScalar(col 0:tinyint, val 0), 
FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleScalar(col 13:double, 
val -28800.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterLongColEqualLongColumn(col 0:int, col 2:int)(children: col 0:tinyint), 
FilterStringColLikeStringScalar(col 7:string, pattern ss)), 
FilterExprOrExpr(children: FilterDoubleColGreaterDoubleScalar(col 5:double, val 
988888.0), FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 
14:double, val -28792.315)(children: CastTimestampToDouble(col 9:timestamp) -> 
14:double), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 3569.0))))
                     predicate: (((UDFToDouble(ctimestamp1) <= -28800.0D) or 
(UDFToInteger(ctinyint) = cint) or (cstring2 like 'ss')) and ((cdouble > 
988888.0D) or ((UDFToDouble(ctimestamp2) > -28792.315D) and (cdouble <= 
3569.0D))) and (ctinyint <> 0Y)) (type: boolean)
                     Statistics: Num rows: 5461 Data size: 1342196 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -347,8 +347,8 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [10, 3, 1, 0, 8, 6, 14, 
15, 16, 17, 19, 20, 18, 21, 23]
-                          selectExpressions: LongColAddLongColumn(col 
3:bigint, col 3:bigint) -> 14:bigint, LongColModuloLongScalar(col 1:int, val 
-257)(children: col 1:smallint) -> 15:int, LongColUnaryMinus(col 1:smallint) -> 
16:smallint, LongColUnaryMinus(col 0:tinyint) -> 17:tinyint, 
LongColAddLongScalar(col 18:int, val 17)(children: LongColUnaryMinus(col 
0:tinyint) -> 18:tinyint) -> 19:int, LongColMultiplyLongColumn(col 3:bigint, 
col 18:bigint)(children: LongColUnaryMinus(col 1:smallint) -> 18:smallint) -> 
20:bigint, LongColModuloLongColumn(col 2:int, col 1:int)(children: col 
1:smallint) -> 18:int, LongColUnaryMinus(col 0:tinyint) -> 21:tinyint, 
LongColModuloLongColumn(col 22:tinyint, col 0:tinyint)(children: 
LongColUnaryMinus(col 0:tinyint) -> 22:tinyint) -> 23:tinyint
+                          projectedOutputColumnNums: [10, 3, 1, 0, 8, 6, 15, 
16, 17, 18, 20, 22, 23, 24, 26]
+                          selectExpressions: LongColAddLongColumn(col 
3:bigint, col 3:bigint) -> 15:bigint, LongColModuloLongScalar(col 1:int, val 
-257)(children: col 1:smallint) -> 16:int, LongColUnaryMinus(col 1:smallint) -> 
17:smallint, LongColUnaryMinus(col 0:tinyint) -> 18:tinyint, 
LongColAddLongScalar(col 19:int, val 17)(children: LongColUnaryMinus(col 
0:tinyint) -> 19:tinyint) -> 20:int, LongColMultiplyLongColumn(col 3:bigint, 
col 21:bigint)(children: LongColUnaryMinus(col 1:smallint) -> 21:smallint) -> 
22:bigint, LongColModuloLongColumn(col 2:int, col 1:int)(children: col 
1:smallint) -> 23:int, LongColUnaryMinus(col 0:tinyint) -> 24:tinyint, 
LongColModuloLongColumn(col 25:tinyint, col 0:tinyint)(children: 
LongColUnaryMinus(col 0:tinyint) -> 25:tinyint) -> 26:tinyint
                       Statistics: Num rows: 5461 Data size: 923616 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: boolean), _col1 (type: 
bigint), _col2 (type: smallint), _col3 (type: tinyint), _col4 (type: 
timestamp), _col5 (type: string), _col6 (type: bigint), _col7 (type: int), 
_col8 (type: smallint), _col9 (type: tinyint), _col10 (type: int), _col11 
(type: bigint), _col12 (type: int), _col13 (type: tinyint), _col14 (type: 
tinyint)

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/llap/vectorization_8.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/vectorization_8.q.out 
b/ql/src/test/results/clientpositive/llap/vectorization_8.q.out
index a0e1a4b..3959239 100644
--- a/ql/src/test/results/clientpositive/llap/vectorization_8.q.out
+++ b/ql/src/test/results/clientpositive/llap/vectorization_8.q.out
@@ -81,7 +81,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 7:string), 
FilterDoubleColLessEqualDoubleScalar(col 13:double, val 10.0)(children: 
CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 13:double, val 16.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double)), 
FilterDoubleColLessDoubleScalar(col 4:float, val -6432.0), 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 10:boolean), 
FilterDoubleColEqualDoubleScalar(col 5:double, val 988888.0)))
+                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 7:string), 
FilterDoubleColLessEqualDoubleScalar(col 13:double, val 10.0)(children: 
CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 14:double, val 16.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 14:double)), 
FilterDoubleColLessDoubleScalar(col 4:float, val -6432.0), 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 10:boolean), 
FilterDoubleColEqualDoubleScalar(col 5:double, val 988888.0)))
                     predicate: ((cboolean1 is not null and (cdouble = 
988888.0D)) or (cfloat < -6432.0) or (cstring2 is not null and 
(UDFToDouble(ctimestamp1) <= 10.0D) and (UDFToDouble(ctimestamp2) <> 16.0D))) 
(type: boolean)
                     Statistics: Num rows: 3059 Data size: 742850 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -90,15 +90,15 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [8, 5, 10, 6, 4, 13, 14, 
15, 17, 19, 16, 18, 20, 22]
-                          selectExpressions: DoubleColUnaryMinus(col 5:double) 
-> 13:double, DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 
14:double, DoubleColMultiplyDoubleScalar(col 5:double, val -257.0) -> 
15:double, DoubleColAddDoubleColumn(col 16:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 16:float) -> 17:float, 
DoubleColAddDoubleColumn(col 16:double, col 18:double)(children: 
DoubleColUnaryMinus(col 5:double) -> 16:double, CastLongToDouble(col 3:bigint) 
-> 18:double) -> 19:double, DoubleColUnaryMinus(col 5:double) -> 16:double, 
DoubleScalarSubtractDoubleColumn(val -1.3890000581741333, col 4:float) -> 
18:float, DoubleColUnaryMinus(col 4:float) -> 20:float, 
DoubleColAddDoubleColumn(col 21:double, col 23:double)(children: 
DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 21:double, 
DoubleColAddDoubleColumn(col 22:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 22:float) -> 23:float) -> 22:dou
 ble
+                          projectedOutputColumnNums: [8, 5, 10, 6, 4, 15, 16, 
17, 19, 22, 23, 24, 25, 29]
+                          selectExpressions: DoubleColUnaryMinus(col 5:double) 
-> 15:double, DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 
16:double, DoubleColMultiplyDoubleScalar(col 5:double, val -257.0) -> 
17:double, DoubleColAddDoubleColumn(col 18:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 18:float) -> 19:float, 
DoubleColAddDoubleColumn(col 20:double, col 21:double)(children: 
DoubleColUnaryMinus(col 5:double) -> 20:double, CastLongToDouble(col 3:bigint) 
-> 21:double) -> 22:double, DoubleColUnaryMinus(col 5:double) -> 23:double, 
DoubleScalarSubtractDoubleColumn(val -1.3890000581741333, col 4:float) -> 
24:float, DoubleColUnaryMinus(col 4:float) -> 25:float, 
DoubleColAddDoubleColumn(col 26:double, col 28:double)(children: 
DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 26:double, 
DoubleColAddDoubleColumn(col 27:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 27:float) -> 28:float) -> 29:dou
 ble
                       Statistics: Num rows: 3059 Data size: 557250 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: timestamp), _col1 (type: 
double), _col2 (type: boolean), _col3 (type: string), _col4 (type: float), 
_col5 (type: double), _col6 (type: double), _col7 (type: double), _col8 (type: 
float), _col9 (type: double), _col10 (type: double), _col11 (type: float), 
_col12 (type: float), _col13 (type: double)
                         sort order: ++++++++++++++
                         Reduce Sink Vectorization:
                             className: VectorReduceSinkObjectHashOperator
-                            keyColumns: 8:timestamp, 5:double, 10:boolean, 
6:string, 4:float, 13:double, 14:double, 15:double, 17:float, 19:double, 
16:double, 18:float, 20:float, 22:double
+                            keyColumns: 8:timestamp, 5:double, 10:boolean, 
6:string, 4:float, 15:double, 16:double, 17:double, 19:float, 22:double, 
23:double, 24:float, 25:float, 29:double
                             native: true
                             nativeConditionsMet: 
hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine 
tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, 
BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true
                         Statistics: Num rows: 3059 Data size: 557250 Basic 
stats: COMPLETE Column stats: COMPLETE
@@ -119,7 +119,7 @@ STAGE PLANS:
                     includeColumns: [2, 3, 4, 5, 6, 7, 8, 9, 10]
                     dataColumns: ctinyint:tinyint, csmallint:smallint, 
cint:int, cbigint:bigint, cfloat:float, cdouble:double, cstring1:string, 
cstring2:string, ctimestamp1:timestamp, ctimestamp2:timestamp, 
cboolean1:boolean, cboolean2:boolean
                     partitionColumnCount: 0
-                    scratchColumnTypeNames: [double, double, double, double, 
double, double, double, double, double, double, double]
+                    scratchColumnTypeNames: [double, double, double, double, 
double, double, double, double, double, double, double, double, double, double, 
double, double, double]
         Reducer 2 
             Execution mode: vectorized, llap
             Reduce Vectorization:
@@ -321,7 +321,7 @@ STAGE PLANS:
                     Filter Vectorization:
                         className: VectorFilterOperator
                         native: true
-                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 7:string), 
FilterDoubleColLessEqualDoubleScalar(col 13:double, val 12.503)(children: 
CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 13:double, val 11.998)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double)), 
FilterDoubleColLessDoubleScalar(col 4:float, val -6432.0), 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 10:boolean), 
FilterDoubleColEqualDoubleScalar(col 5:double, val 988888.0)))
+                        predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 7:string), 
FilterDoubleColLessEqualDoubleScalar(col 13:double, val 12.503)(children: 
CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 14:double, val 11.998)(children: 
CastTimestampToDouble(col 9:timestamp) -> 14:double)), 
FilterDoubleColLessDoubleScalar(col 4:float, val -6432.0), 
FilterExprAndExpr(children: SelectColumnIsNotNull(col 10:boolean), 
FilterDoubleColEqualDoubleScalar(col 5:double, val 988888.0)))
                     predicate: ((cboolean1 is not null and (cdouble = 
988888.0D)) or (cfloat < -6432.0) or (cstring2 is not null and 
(UDFToDouble(ctimestamp1) <= 12.503D) and (UDFToDouble(ctimestamp2) <> 
11.998D))) (type: boolean)
                     Statistics: Num rows: 3059 Data size: 742850 Basic stats: 
COMPLETE Column stats: COMPLETE
                     Select Operator
@@ -330,8 +330,8 @@ STAGE PLANS:
                       Select Vectorization:
                           className: VectorSelectOperator
                           native: true
-                          projectedOutputColumnNums: [8, 5, 10, 6, 4, 13, 14, 
15, 17, 19, 16, 18, 20, 22]
-                          selectExpressions: DoubleColUnaryMinus(col 5:double) 
-> 13:double, DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 
14:double, DoubleColMultiplyDoubleScalar(col 5:double, val -257.0) -> 
15:double, DoubleColAddDoubleColumn(col 16:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 16:float) -> 17:float, 
DoubleColAddDoubleColumn(col 16:double, col 18:double)(children: 
DoubleColUnaryMinus(col 5:double) -> 16:double, CastLongToDouble(col 3:bigint) 
-> 18:double) -> 19:double, DoubleColUnaryMinus(col 5:double) -> 16:double, 
DoubleScalarSubtractDoubleColumn(val -1.3890000581741333, col 4:float) -> 
18:float, DoubleColUnaryMinus(col 4:float) -> 20:float, 
DoubleColAddDoubleColumn(col 21:double, col 23:double)(children: 
DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 21:double, 
DoubleColAddDoubleColumn(col 22:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 22:float) -> 23:float) -> 22:dou
 ble
+                          projectedOutputColumnNums: [8, 5, 10, 6, 4, 15, 16, 
17, 19, 22, 23, 24, 25, 29]
+                          selectExpressions: DoubleColUnaryMinus(col 5:double) 
-> 15:double, DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 
16:double, DoubleColMultiplyDoubleScalar(col 5:double, val -257.0) -> 
17:double, DoubleColAddDoubleColumn(col 18:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 18:float) -> 19:float, 
DoubleColAddDoubleColumn(col 20:double, col 21:double)(children: 
DoubleColUnaryMinus(col 5:double) -> 20:double, CastLongToDouble(col 3:bigint) 
-> 21:double) -> 22:double, DoubleColUnaryMinus(col 5:double) -> 23:double, 
DoubleScalarSubtractDoubleColumn(val -1.3890000581741333, col 4:float) -> 
24:float, DoubleColUnaryMinus(col 4:float) -> 25:float, 
DoubleColAddDoubleColumn(col 26:double, col 28:double)(children: 
DoubleScalarSubtractDoubleColumn(val -5638.15, col 5:double) -> 26:double, 
DoubleColAddDoubleColumn(col 27:float, col 4:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 27:float) -> 28:float) -> 29:dou
 ble
                       Statistics: Num rows: 3059 Data size: 557250 Basic 
stats: COMPLETE Column stats: COMPLETE
                       Reduce Output Operator
                         key expressions: _col0 (type: timestamp), _col1 (type: 
double), _col2 (type: boolean), _col3 (type: string), _col4 (type: float), 
_col5 (type: double), _col6 (type: double), _col7 (type: double), _col8 (type: 
float), _col9 (type: double), _col10 (type: double), _col11 (type: float), 
_col12 (type: float), _col13 (type: double)

Reply via email to