http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vector_string_concat.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_string_concat.q.out 
b/ql/src/test/results/clientpositive/vector_string_concat.q.out
index 2e30fc4..de17c81 100644
--- a/ql/src/test/results/clientpositive/vector_string_concat.q.out
+++ b/ql/src/test/results/clientpositive/vector_string_concat.q.out
@@ -132,8 +132,8 @@ STAGE PLANS:
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [7, 13, 12]
-                  selectExpressions: StringGroupColConcatStringScalar(col 
12:string, val       )(children: StringScalarConcatStringGroupCol(val       , 
col 7:string) -> 12:string) -> 13:string, StringGroupColConcatStringScalar(col 
14:string, val |)(children: StringScalarConcatStringGroupCol(val |, col 
12:string)(children: StringRTrim(col 14:string)(children: 
StringGroupColConcatStringScalar(col 12:string, val       )(children: 
StringScalarConcatStringGroupCol(val       , col 7:string) -> 12:string) -> 
14:string) -> 12:string) -> 14:string) -> 12:string
+                  projectedOutputColumnNums: [7, 13, 18]
+                  selectExpressions: StringGroupColConcatStringScalar(col 
12:string, val       )(children: StringScalarConcatStringGroupCol(val       , 
col 7:string) -> 12:string) -> 13:string, StringGroupColConcatStringScalar(col 
17:string, val |)(children: StringScalarConcatStringGroupCol(val |, col 
16:string)(children: StringRTrim(col 15:string)(children: 
StringGroupColConcatStringScalar(col 14:string, val       )(children: 
StringScalarConcatStringGroupCol(val       , col 7:string) -> 14:string) -> 
15:string) -> 16:string) -> 17:string) -> 18:string
               Statistics: Num rows: 1049 Data size: 311170 Basic stats: 
COMPLETE Column stats: NONE
               Limit
                 Number of rows: 20
@@ -347,14 +347,14 @@ STAGE PLANS:
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [20]
-                  selectExpressions: StringGroupConcatColCol(col 18:string, 
col 19:string)(children: StringGroupColConcatStringScalar(col 19:string, val 
-)(children: StringScalarConcatStringGroupCol(val Quarter , col 
18:string)(children: CastLongToString(col 14:int)(children: 
CastDoubleToLong(col 16:double)(children: DoubleColAddDoubleScalar(col 
17:double, val 1.0)(children: DoubleColDivideDoubleScalar(col 16:double, val 
3.0)(children: CastLongToDouble(col 15:int)(children: 
LongColSubtractLongScalar(col 14:int, val 1)(children: VectorUDFMonthDate(col 
12, field MONTH) -> 14:int) -> 15:int) -> 16:double) -> 17:double) -> 
16:double) -> 14:int) -> 18:string) -> 19:string) -> 18:string, 
CastLongToString(col 14:int)(children: VectorUDFYearDate(col 12, field YEAR) -> 
14:int) -> 19:string) -> 20:string
+                  projectedOutputColumnNums: [25]
+                  selectExpressions: StringGroupConcatColCol(col 22:string, 
col 24:string)(children: StringGroupColConcatStringScalar(col 21:string, val 
-)(children: StringScalarConcatStringGroupCol(val Quarter , col 
20:string)(children: CastLongToString(col 19:int)(children: 
CastDoubleToLong(col 18:double)(children: DoubleColAddDoubleScalar(col 
17:double, val 1.0)(children: DoubleColDivideDoubleScalar(col 16:double, val 
3.0)(children: CastLongToDouble(col 15:int)(children: 
LongColSubtractLongScalar(col 14:int, val 1)(children: VectorUDFMonthDate(col 
12, field MONTH) -> 14:int) -> 15:int) -> 16:double) -> 17:double) -> 
18:double) -> 19:int) -> 20:string) -> 21:string) -> 22:string, 
CastLongToString(col 23:int)(children: VectorUDFYearDate(col 12, field YEAR) -> 
23:int) -> 24:string) -> 25:string
               Statistics: Num rows: 2000 Data size: 918712 Basic stats: 
COMPLETE Column stats: NONE
               Group By Operator
                 Group By Vectorization:
                     className: VectorGroupByOperator
                     groupByMode: HASH
-                    keyExpressions: col 20:string
+                    keyExpressions: col 25:string
                     native: false
                     vectorProcessingMode: HASH
                     projectedOutputColumnNums: []

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_1.q.out 
b/ql/src/test/results/clientpositive/vectorization_1.q.out
index af6f03d..98d518c 100644
--- a/ql/src/test/results/clientpositive/vectorization_1.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_1.q.out
@@ -76,13 +76,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [0, 4, 2, 5, 13, 16, 14]
-                    selectExpressions: CastLongToDouble(col 0:tinyint) -> 
13:double, DoubleColMultiplyDoubleColumn(col 14:double, col 
15:double)(children: CastLongToDouble(col 0:tinyint) -> 14:double, 
CastLongToDouble(col 0:tinyint) -> 15:double) -> 16:double, 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 14:double
+                    projectedOutputColumnNums: [0, 4, 2, 5, 14, 17, 18]
+                    selectExpressions: CastLongToDouble(col 0:tinyint) -> 
14:double, DoubleColMultiplyDoubleColumn(col 15:double, col 
16:double)(children: CastLongToDouble(col 0:tinyint) -> 15:double, 
CastLongToDouble(col 0:tinyint) -> 16:double) -> 17:double, 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 18:double
                 Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: sum(_col5), sum(_col4), count(_col0), 
sum(_col1), max(_col0), max(_col2), sum(_col6), sum(_col3), count(_col3), 
count(_col2)
                   Group By Vectorization:
-                      aggregators: VectorUDAFSumDouble(col 16:double) -> 
double, VectorUDAFSumDouble(col 13:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFSumDouble(col 4:float) -> double, 
VectorUDAFMaxLong(col 0:tinyint) -> tinyint, VectorUDAFMaxLong(col 2:int) -> 
int, VectorUDAFSumDouble(col 14:double) -> double, VectorUDAFSumDouble(col 
5:double) -> double, VectorUDAFCount(col 5:double) -> bigint, 
VectorUDAFCount(col 2:int) -> bigint
+                      aggregators: VectorUDAFSumDouble(col 17:double) -> 
double, VectorUDAFSumDouble(col 14:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFSumDouble(col 4:float) -> double, 
VectorUDAFMaxLong(col 0:tinyint) -> tinyint, VectorUDAFMaxLong(col 2:int) -> 
int, VectorUDAFSumDouble(col 18:double) -> double, VectorUDAFSumDouble(col 
5:double) -> double, VectorUDAFCount(col 5:double) -> bigint, 
VectorUDAFCount(col 2:int) -> bigint
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       native: false
@@ -115,7 +115,7 @@ STAGE PLANS:
               includeColumns: [0, 2, 3, 4, 5, 10, 11]
               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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_10.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_10.q.out 
b/ql/src/test/results/clientpositive/vectorization_10.q.out
index b8cebbf..5f6e386 100644
--- a/ql/src/test/results/clientpositive/vectorization_10.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_10.q.out
@@ -82,8 +82,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [5, 8, 0, 10, 6, 13, 17, 16, 
18, 20, 21, 19, 23, 24, 26]
-                    selectExpressions: DoubleColUnaryMinus(col 5:double) -> 
13:double, DoubleColAddDoubleColumn(col 5:double, col 16:double)(children: 
CastLongToDouble(col 1:smallint) -> 16:double) -> 17:double, 
DoubleColModuloDoubleScalar(col 18:double, val 33.0)(children: 
DoubleColAddDoubleColumn(col 5:double, col 16:double)(children: 
CastLongToDouble(col 1:smallint) -> 16:double) -> 18:double) -> 16:double, 
DoubleColUnaryMinus(col 5:double) -> 18:double, DoubleColModuloDoubleColumn(col 
19:double, col 5:double)(children: CastLongToDouble(col 0:tinyint) -> 
19:double) -> 20:double, LongColModuloLongColumn(col 0:smallint, col 
1:smallint)(children: col 0:tinyint) -> 21:smallint, DoubleColUnaryMinus(col 
5:double) -> 19:double, LongColMultiplyLongColumn(col 3:bigint, col 
22:bigint)(children: LongColModuloLongColumn(col 0:smallint, col 
1:smallint)(children: col 0:tinyint) -> 22:smallint) -> 23:bigint, 
DoubleScalarSubtractDoubleColumn(val 9763215.5639, col 25:double)(children: 
DoubleColAd
 dDoubleColumn(col 5:double, col 24:double)(children: CastLongToDouble(col 
1:smallint) -> 24:double) -> 25:double) -> 24:double, DoubleColUnaryMinus(col 
25:double)(children: DoubleColUnaryMinus(col 5:double) -> 25:double) -> 
26:double
+                    projectedOutputColumnNums: [5, 8, 0, 10, 6, 16, 18, 21, 
22, 24, 25, 26, 28, 31, 33]
+                    selectExpressions: DoubleColUnaryMinus(col 5:double) -> 
16:double, DoubleColAddDoubleColumn(col 5:double, col 17:double)(children: 
CastLongToDouble(col 1:smallint) -> 17:double) -> 18:double, 
DoubleColModuloDoubleScalar(col 20:double, val 33.0)(children: 
DoubleColAddDoubleColumn(col 5:double, col 19:double)(children: 
CastLongToDouble(col 1:smallint) -> 19:double) -> 20:double) -> 21:double, 
DoubleColUnaryMinus(col 5:double) -> 22:double, DoubleColModuloDoubleColumn(col 
23:double, col 5:double)(children: CastLongToDouble(col 0:tinyint) -> 
23:double) -> 24:double, LongColModuloLongColumn(col 0:smallint, col 
1:smallint)(children: col 0:tinyint) -> 25:smallint, DoubleColUnaryMinus(col 
5:double) -> 26:double, LongColMultiplyLongColumn(col 3:bigint, col 
27:bigint)(children: LongColModuloLongColumn(col 0:smallint, col 
1:smallint)(children: col 0:tinyint) -> 27:smallint) -> 28:bigint, 
DoubleScalarSubtractDoubleColumn(val 9763215.5639, col 30:double)(children: 
DoubleColAd
 dDoubleColumn(col 5:double, col 29:double)(children: CastLongToDouble(col 
1:smallint) -> 29:double) -> 30:double) -> 31:double, DoubleColUnaryMinus(col 
32:double)(children: DoubleColUnaryMinus(col 5:double) -> 32:double) -> 
33:double
                 Statistics: Num rows: 9557 Data size: 2261694 Basic stats: 
COMPLETE Column stats: NONE
                 File Output Operator
                   compressed: false
@@ -110,7 +110,7 @@ STAGE PLANS:
               includeColumns: [0, 1, 3, 5, 6, 7, 8, 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, decimal(6,2), decimal(11,4), 
double, double, double, double, double, bigint, bigint, bigint, double, double, 
double]
+              scratchColumnTypeNames: [double, decimal(6,2), decimal(11,4), 
double, double, double, double, double, double, double, double, double, bigint, 
double, bigint, bigint, double, double, double, double, double]
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_11.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_11.q.out 
b/ql/src/test/results/clientpositive/vectorization_11.q.out
index f6441a3..f55ae55 100644
--- a/ql/src/test/results/clientpositive/vectorization_11.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_11.q.out
@@ -64,8 +64,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [6, 10, 5, 8, 13, 14, 15, 17, 
16]
-                    selectExpressions: LongScalarMultiplyLongColumn(val -3728, 
col 1:int)(children: col 1:smallint) -> 13:int, 
DoubleColSubtractDoubleScalar(col 5:double, val 9763215.5639) -> 14:double, 
DoubleColUnaryMinus(col 5:double) -> 15:double, DoubleColAddDoubleScalar(col 
16:double, val 6981.0)(children: DoubleColUnaryMinus(col 5:double) -> 
16:double) -> 17:double, DoubleColMultiplyDoubleScalar(col 5:double, val 
-5638.15) -> 16:double
+                    projectedOutputColumnNums: [6, 10, 5, 8, 13, 14, 15, 17, 
18]
+                    selectExpressions: LongScalarMultiplyLongColumn(val -3728, 
col 1:int)(children: col 1:smallint) -> 13:int, 
DoubleColSubtractDoubleScalar(col 5:double, val 9763215.5639) -> 14:double, 
DoubleColUnaryMinus(col 5:double) -> 15:double, DoubleColAddDoubleScalar(col 
16:double, val 6981.0)(children: DoubleColUnaryMinus(col 5:double) -> 
16:double) -> 17:double, DoubleColMultiplyDoubleScalar(col 5:double, val 
-5638.15) -> 18:double
                 Statistics: Num rows: 9216 Data size: 2180995 Basic stats: 
COMPLETE Column stats: NONE
                 File Output Operator
                   compressed: false
@@ -92,7 +92,7 @@ STAGE PLANS:
               includeColumns: [1, 5, 6, 7, 8, 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: [bigint, double, double, double, double]
+              scratchColumnTypeNames: [bigint, double, double, double, double, 
double]
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_12.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_12.q.out 
b/ql/src/test/results/clientpositive/vectorization_12.q.out
index 0a93463..1cf5ade 100644
--- a/ql/src/test/results/clientpositive/vectorization_12.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_12.q.out
@@ -99,13 +99,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [3, 10, 6, 5, 13, 16, 14]
-                    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, 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 14:double
+                    projectedOutputColumnNums: [3, 10, 6, 5, 13, 16, 17]
+                    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, 
DoubleColMultiplyDoubleColumn(col 5:double, col 5:double) -> 17:double
                 Statistics: Num rows: 3754 Data size: 888395 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: count(_col0), sum(_col5), sum(_col4), 
sum(_col3), count(_col3), sum(_col0), sum(_col6)
                   Group By Vectorization:
-                      aggregators: VectorUDAFCount(col 3:bigint) -> bigint, 
VectorUDAFSumDouble(col 16:double) -> double, VectorUDAFSumDouble(col 
13:double) -> double, VectorUDAFSumDouble(col 5:double) -> double, 
VectorUDAFCount(col 5:double) -> bigint, VectorUDAFSumLong(col 3:bigint) -> 
bigint, VectorUDAFSumDouble(col 14:double) -> double
+                      aggregators: VectorUDAFCount(col 3:bigint) -> bigint, 
VectorUDAFSumDouble(col 16:double) -> double, VectorUDAFSumDouble(col 
13:double) -> double, VectorUDAFSumDouble(col 5:double) -> double, 
VectorUDAFCount(col 5:double) -> bigint, VectorUDAFSumLong(col 3:bigint) -> 
bigint, VectorUDAFSumDouble(col 17:double) -> double
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       keyExpressions: col 5:double, col 3:bigint, col 
6:string, col 10:boolean
@@ -142,7 +142,7 @@ STAGE PLANS:
               includeColumns: [0, 1, 3, 5, 6, 8, 10, 11]
               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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_13.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_13.q.out 
b/ql/src/test/results/clientpositive/vectorization_13.q.out
index 2ed6618..5db2cb9 100644
--- a/ql/src/test/results/clientpositive/vectorization_13.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_13.q.out
@@ -92,7 +92,7 @@ STAGE PLANS:
               Filter Vectorization:
                   className: VectorFilterOperator
                   native: true
-                  predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessDoubleScalar(col 4:float, val 
3569.0), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 10.175), 
FilterLongColNotEqualLongScalar(col 10:boolean, val 1)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 13:double, 
val -28789.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 13:double, val -28788.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double), 
FilterDecimalColLessDecimalScalar(col 14:decimal(11,4), val 
9763215.5639)(children: CastLongToDecimal(col 0:tinyint) -> 14:decimal(11,4))))
+                  predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessDoubleScalar(col 4:float, val 
3569.0), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 10.175), 
FilterLongColNotEqualLongScalar(col 10:boolean, val 1)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 13:double, 
val -28789.0)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 14:double, val -28788.0)(children: 
CastTimestampToDouble(col 9:timestamp) -> 14:double), 
FilterDecimalColLessDecimalScalar(col 15:decimal(11,4), val 
9763215.5639)(children: CastLongToDecimal(col 0:tinyint) -> 15:decimal(11,4))))
               predicate: (((UDFToDouble(ctimestamp1) > -28789.0D) and 
(UDFToDouble(ctimestamp2) <> -28788.0D) and (CAST( ctinyint AS decimal(11,4)) < 
9763215.5639)) or ((cfloat < 3569.0) and (cdouble <= 10.175D) and (cboolean1 <> 
1))) (type: boolean)
               Statistics: Num rows: 2730 Data size: 646063 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -101,13 +101,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [10, 0, 8, 4, 6, 4, 13, 15, 18]
-                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 13:double, 
CastLongToDouble(col 0:tinyint) -> 15:double, DoubleColMultiplyDoubleColumn(col 
16:double, col 17:double)(children: CastLongToDouble(col 0:tinyint) -> 
16:double, CastLongToDouble(col 0:tinyint) -> 17:double) -> 18:double
+                    projectedOutputColumnNums: [10, 0, 8, 4, 6, 4, 16, 17, 20]
+                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 16:double, 
CastLongToDouble(col 0:tinyint) -> 17:double, DoubleColMultiplyDoubleColumn(col 
18:double, col 19:double)(children: CastLongToDouble(col 0:tinyint) -> 
18:double, CastLongToDouble(col 0:tinyint) -> 19:double) -> 20:double
                 Statistics: Num rows: 2730 Data size: 646063 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: max(_col1), sum(_col3), sum(_col6), 
sum(_col5), count(_col3), sum(_col8), sum(_col7), count(_col1), max(_col3), 
min(_col1)
                   Group By Vectorization:
-                      aggregators: VectorUDAFMaxLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumDouble(col 
13:double) -> double, VectorUDAFSumDouble(col 4:double) -> double, 
VectorUDAFCount(col 4:float) -> bigint, VectorUDAFSumDouble(col 18:double) -> 
double, VectorUDAFSumDouble(col 15:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFMinLong(col 0:tinyint) -> tinyint
+                      aggregators: VectorUDAFMaxLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumDouble(col 
16:double) -> double, VectorUDAFSumDouble(col 4:double) -> double, 
VectorUDAFCount(col 4:float) -> bigint, VectorUDAFSumDouble(col 20:double) -> 
double, VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFMinLong(col 0:tinyint) -> tinyint
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       keyExpressions: col 10:boolean, col 0:tinyint, col 
8:timestamp, col 4:float, col 6:string
@@ -144,7 +144,7 @@ STAGE PLANS:
               includeColumns: [0, 4, 5, 6, 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, decimal(11,4), double, double, 
double, double]
+              scratchColumnTypeNames: [double, double, decimal(11,4), double, 
double, double, double, double]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -427,7 +427,7 @@ STAGE PLANS:
               Filter Vectorization:
                   className: VectorFilterOperator
                   native: true
-                  predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessDoubleScalar(col 4:float, val 
3569.0), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 10.175), 
FilterLongColNotEqualLongScalar(col 10:boolean, val 1)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 13:double, 
val -28801.388)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 13:double, val -28801.336)(children: 
CastTimestampToDouble(col 9:timestamp) -> 13:double), 
FilterDecimalColLessDecimalScalar(col 14:decimal(11,4), val 
9763215.5639)(children: CastLongToDecimal(col 0:tinyint) -> 14:decimal(11,4))))
+                  predicateExpression: FilterExprOrExpr(children: 
FilterExprAndExpr(children: FilterDoubleColLessDoubleScalar(col 4:float, val 
3569.0), FilterDoubleColLessEqualDoubleScalar(col 5:double, val 10.175), 
FilterLongColNotEqualLongScalar(col 10:boolean, val 1)), 
FilterExprAndExpr(children: FilterDoubleColGreaterDoubleScalar(col 13:double, 
val -28801.388)(children: CastTimestampToDouble(col 8:timestamp) -> 13:double), 
FilterDoubleColNotEqualDoubleScalar(col 14:double, val -28801.336)(children: 
CastTimestampToDouble(col 9:timestamp) -> 14:double), 
FilterDecimalColLessDecimalScalar(col 15:decimal(11,4), val 
9763215.5639)(children: CastLongToDecimal(col 0:tinyint) -> 15:decimal(11,4))))
               predicate: (((UDFToDouble(ctimestamp1) > -28801.388D) and 
(UDFToDouble(ctimestamp2) <> -28801.336D) and (CAST( ctinyint AS decimal(11,4)) 
< 9763215.5639)) or ((cfloat < 3569.0) and (cdouble <= 10.175D) and (cboolean1 
<> 1))) (type: boolean)
               Statistics: Num rows: 2730 Data size: 646063 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -436,13 +436,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [10, 0, 8, 4, 6, 4, 13, 15, 18]
-                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 13:double, 
CastLongToDouble(col 0:tinyint) -> 15:double, DoubleColMultiplyDoubleColumn(col 
16:double, col 17:double)(children: CastLongToDouble(col 0:tinyint) -> 
16:double, CastLongToDouble(col 0:tinyint) -> 17:double) -> 18:double
+                    projectedOutputColumnNums: [10, 0, 8, 4, 6, 4, 16, 17, 20]
+                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 16:double, 
CastLongToDouble(col 0:tinyint) -> 17:double, DoubleColMultiplyDoubleColumn(col 
18:double, col 19:double)(children: CastLongToDouble(col 0:tinyint) -> 
18:double, CastLongToDouble(col 0:tinyint) -> 19:double) -> 20:double
                 Statistics: Num rows: 2730 Data size: 646063 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: max(_col1), sum(_col3), sum(_col6), 
sum(_col5), count(_col3), sum(_col8), sum(_col7), count(_col1), max(_col3), 
min(_col1)
                   Group By Vectorization:
-                      aggregators: VectorUDAFMaxLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumDouble(col 
13:double) -> double, VectorUDAFSumDouble(col 4:double) -> double, 
VectorUDAFCount(col 4:float) -> bigint, VectorUDAFSumDouble(col 18:double) -> 
double, VectorUDAFSumDouble(col 15:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFMinLong(col 0:tinyint) -> tinyint
+                      aggregators: VectorUDAFMaxLong(col 0:tinyint) -> 
tinyint, VectorUDAFSumDouble(col 4:float) -> double, VectorUDAFSumDouble(col 
16:double) -> double, VectorUDAFSumDouble(col 4:double) -> double, 
VectorUDAFCount(col 4:float) -> bigint, VectorUDAFSumDouble(col 20:double) -> 
double, VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFCount(col 
0:tinyint) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFMinLong(col 0:tinyint) -> tinyint
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       keyExpressions: col 10:boolean, col 0:tinyint, col 
8:timestamp, col 4:float, col 6:string

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_14.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_14.q.out 
b/ql/src/test/results/clientpositive/vectorization_14.q.out
index 88e41cc..35329f7 100644
--- a/ql/src/test/results/clientpositive/vectorization_14.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_14.q.out
@@ -92,7 +92,7 @@ STAGE PLANS:
               Filter Vectorization:
                   className: VectorFilterOperator
                   native: true
-                  predicateExpression: FilterExprAndExpr(children: 
FilterLongColLessEqualLongColumn(col 0:bigint, col 3:bigint)(children: col 
0:tinyint), FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleColumn(col 
13:double, col 5:double)(children: CastLongToDouble(col 2:int) -> 13:double), 
FilterTimestampColLessTimestampColumn(col 9:timestamp, col 8:timestamp)), 
FilterDoubleColLessDoubleColumn(col 5:double, col 13:double)(children: 
CastLongToDouble(col 0:tinyint) -> 13:double), FilterExprOrExpr(children: 
FilterLongColGreaterLongScalar(col 3:bigint, val -257), 
FilterDoubleColLessDoubleColumn(col 4:float, col 13:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 13:float)))
+                  predicateExpression: FilterExprAndExpr(children: 
FilterLongColLessEqualLongColumn(col 0:bigint, col 3:bigint)(children: col 
0:tinyint), FilterExprOrExpr(children: FilterDoubleColLessEqualDoubleColumn(col 
13:double, col 5:double)(children: CastLongToDouble(col 2:int) -> 13:double), 
FilterTimestampColLessTimestampColumn(col 9:timestamp, col 8:timestamp)), 
FilterDoubleColLessDoubleColumn(col 5:double, col 14:double)(children: 
CastLongToDouble(col 0:tinyint) -> 14:double), FilterExprOrExpr(children: 
FilterLongColGreaterLongScalar(col 3:bigint, val -257), 
FilterDoubleColLessDoubleColumn(col 4:float, col 15:float)(children: 
CastLongToFloatViaLongToDouble(col 2:int) -> 15:float)))
               predicate: (((UDFToDouble(cint) <= cdouble) or (ctimestamp2 < 
ctimestamp1)) and ((cbigint > -257L) or (cfloat < UDFToFloat(cint))) and 
(UDFToLong(ctinyint) <= cbigint) and (cdouble < UDFToDouble(ctinyint))) (type: 
boolean)
               Statistics: Num rows: 606 Data size: 143411 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -101,13 +101,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [8, 4, 6, 10, 5, 14, 13, 4, 15]
-                    selectExpressions: DoubleColUnaryMinus(col 
13:double)(children: DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 
13:double) -> 14:double, DoubleColMultiplyDoubleColumn(col 15:double, col 
16:double)(children: DoubleColUnaryMinus(col 13:double)(children: 
DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 13:double) -> 
15:double, DoubleColUnaryMinus(col 13:double)(children: 
DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 13:double) -> 
16:double) -> 13:double, DoubleColMultiplyDoubleColumn(col 4:double, col 
4:double)(children: col 4:float, col 4:float) -> 15:double
+                    projectedOutputColumnNums: [8, 4, 6, 10, 5, 17, 22, 4, 23]
+                    selectExpressions: DoubleColUnaryMinus(col 
16:double)(children: DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 
16:double) -> 17:double, DoubleColMultiplyDoubleColumn(col 19:double, col 
21:double)(children: DoubleColUnaryMinus(col 18:double)(children: 
DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 18:double) -> 
19:double, DoubleColUnaryMinus(col 20:double)(children: 
DoubleScalarAddDoubleColumn(val -26.28, col 5:double) -> 20:double) -> 
21:double) -> 22:double, DoubleColMultiplyDoubleColumn(col 4:double, col 
4:double)(children: col 4:float, col 4:float) -> 23:double
                 Statistics: Num rows: 606 Data size: 143411 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: sum(_col6), sum(_col5), count(_col5), 
max(_col1), sum(_col8), sum(_col7), count(_col1)
                   Group By Vectorization:
-                      aggregators: VectorUDAFSumDouble(col 13:double) -> 
double, VectorUDAFSumDouble(col 14:double) -> double, VectorUDAFCount(col 
14:double) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFSumDouble(col 15:double) -> double, VectorUDAFSumDouble(col 4:double) 
-> double, VectorUDAFCount(col 4:float) -> bigint
+                      aggregators: VectorUDAFSumDouble(col 22:double) -> 
double, VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFCount(col 
17:double) -> bigint, VectorUDAFMaxDouble(col 4:float) -> float, 
VectorUDAFSumDouble(col 23:double) -> double, VectorUDAFSumDouble(col 4:double) 
-> double, VectorUDAFCount(col 4:float) -> bigint
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       keyExpressions: col 6:string, col 4:float, col 5:double, 
col 8:timestamp, col 10:boolean
@@ -144,7 +144,7 @@ STAGE PLANS:
               includeColumns: [0, 2, 3, 4, 5, 6, 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]
+              scratchColumnTypeNames: [double, double, double, double, double, 
double, double, double, double, double, double]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_15.q.out 
b/ql/src/test/results/clientpositive/vectorization_15.q.out
index 6fe8661..d9e238d 100644
--- a/ql/src/test/results/clientpositive/vectorization_15.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_15.q.out
@@ -97,13 +97,13 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [4, 10, 5, 6, 0, 2, 8, 4, 13, 
14, 17, 15, 19]
-                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 13:double, 
CastLongToDouble(col 0:tinyint) -> 14:double, DoubleColMultiplyDoubleColumn(col 
15:double, col 16:double)(children: CastLongToDouble(col 0:tinyint) -> 
15:double, CastLongToDouble(col 0:tinyint) -> 16:double) -> 17:double, 
CastLongToDouble(col 2:int) -> 15:double, DoubleColMultiplyDoubleColumn(col 
16:double, col 18:double)(children: CastLongToDouble(col 2:int) -> 16:double, 
CastLongToDouble(col 2:int) -> 18:double) -> 19:double
+                    projectedOutputColumnNums: [4, 10, 5, 6, 0, 2, 8, 4, 13, 
14, 17, 18, 21]
+                    selectExpressions: DoubleColMultiplyDoubleColumn(col 
4:double, col 4:double)(children: col 4:float, col 4:float) -> 13:double, 
CastLongToDouble(col 0:tinyint) -> 14:double, DoubleColMultiplyDoubleColumn(col 
15:double, col 16:double)(children: CastLongToDouble(col 0:tinyint) -> 
15:double, CastLongToDouble(col 0:tinyint) -> 16:double) -> 17:double, 
CastLongToDouble(col 2:int) -> 18:double, DoubleColMultiplyDoubleColumn(col 
19:double, col 20:double)(children: CastLongToDouble(col 2:int) -> 19:double, 
CastLongToDouble(col 2:int) -> 20:double) -> 21:double
                 Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
                 Group By Operator
                   aggregations: sum(_col8), sum(_col7), count(_col0), 
min(_col2), sum(_col10), sum(_col9), count(_col4), sum(_col12), sum(_col11), 
count(_col5)
                   Group By Vectorization:
-                      aggregators: VectorUDAFSumDouble(col 13:double) -> 
double, VectorUDAFSumDouble(col 4:double) -> double, VectorUDAFCount(col 
4:float) -> bigint, VectorUDAFMinDouble(col 5:double) -> double, 
VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFSumDouble(col 
14:double) -> double, VectorUDAFCount(col 0:tinyint) -> bigint, 
VectorUDAFSumDouble(col 19:double) -> double, VectorUDAFSumDouble(col 
15:double) -> double, VectorUDAFCount(col 2:int) -> bigint
+                      aggregators: VectorUDAFSumDouble(col 13:double) -> 
double, VectorUDAFSumDouble(col 4:double) -> double, VectorUDAFCount(col 
4:float) -> bigint, VectorUDAFMinDouble(col 5:double) -> double, 
VectorUDAFSumDouble(col 17:double) -> double, VectorUDAFSumDouble(col 
14:double) -> double, VectorUDAFCount(col 0:tinyint) -> bigint, 
VectorUDAFSumDouble(col 21:double) -> double, VectorUDAFSumDouble(col 
18:double) -> double, VectorUDAFCount(col 2:int) -> bigint
                       className: VectorGroupByOperator
                       groupByMode: HASH
                       keyExpressions: col 4:float, col 10:boolean, col 
5:double, col 6:string, col 0:tinyint, col 2:int, col 8:timestamp
@@ -140,7 +140,7 @@ STAGE PLANS:
               includeColumns: [0, 1, 2, 4, 5, 6, 7, 8, 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]
+              scratchColumnTypeNames: [double, double, double, double, double, 
double, double, double, double]
       Reduce Vectorization:
           enabled: false
           enableConditionsNotMet: hive.vectorized.execution.reduce.enabled IS 
false, hive.execution.engine mr IN [tez, spark] IS false

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_17.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_17.q.out 
b/ql/src/test/results/clientpositive/vectorization_17.q.out
index 9eaee31..48e1167 100644
--- a/ql/src/test/results/clientpositive/vectorization_17.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_17.q.out
@@ -82,8 +82,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: DoubleColUna
 ryMinus(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: DoubleColUna
 ryMinus(col 27:double)(children: DoubleColUnaryMinus(col 5:double) -> 
27:double) -> 28:double) -> 29:double
                 Statistics: Num rows: 4096 Data size: 969331 Basic stats: 
COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col5 (type: bigint), _col0 (type: float)
@@ -110,7 +110,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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_2.q.out 
b/ql/src/test/results/clientpositive/vectorization_2.q.out
index 75c205b..b6b00b2 100644
--- a/ql/src/test/results/clientpositive/vectorization_2.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_2.q.out
@@ -71,7 +71,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: 4778 Data size: 1130728 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -80,13 +80,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: 4778 Data size: 1130728 Basic stats: 
COMPLETE Column stats: NONE
                 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
@@ -119,7 +119,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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_3.q.out 
b/ql/src/test/results/clientpositive/vectorization_3.q.out
index 6d49d67..9cf1568 100644
--- a/ql/src/test/results/clientpositive/vectorization_3.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_3.q.out
@@ -76,7 +76,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: 592342 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -85,13 +85,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: 592342 Basic stats: 
COMPLETE Column stats: NONE
                 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
@@ -124,7 +124,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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_7.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_7.q.out 
b/ql/src/test/results/clientpositive/vectorization_7.q.out
index 536db29..a602ac0 100644
--- a/ql/src/test/results/clientpositive/vectorization_7.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_7.q.out
@@ -79,7 +79,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: 1292362 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -88,8 +88,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: 1292362 Basic stats: 
COMPLETE Column stats: NONE
                 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)
@@ -116,7 +116,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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -304,7 +304,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: 1292362 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -313,8 +313,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: 1292362 Basic stats: 
COMPLETE Column stats: NONE
                 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/vectorization_8.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorization_8.q.out 
b/ql/src/test/results/clientpositive/vectorization_8.q.out
index 498506c..4af9888 100644
--- a/ql/src/test/results/clientpositive/vectorization_8.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_8.q.out
@@ -75,7 +75,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: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -84,8 +84,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:double
+                    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:double
                 Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
                 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)
@@ -112,7 +112,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]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -287,7 +287,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: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -296,8 +296,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:double
+                    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:double
                 Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
                 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)

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorization_numeric_overflows.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/vectorization_numeric_overflows.q.out 
b/ql/src/test/results/clientpositive/vectorization_numeric_overflows.q.out
index 30191ef..939e958 100644
--- a/ql/src/test/results/clientpositive/vectorization_numeric_overflows.q.out
+++ b/ql/src/test/results/clientpositive/vectorization_numeric_overflows.q.out
@@ -144,8 +144,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [4, 13]
-                    selectExpressions: LongColSubtractLongScalarChecked(col 
4:int, val 2) -> 13:int
+                    projectedOutputColumnNums: [4, 14]
+                    selectExpressions: LongColSubtractLongScalarChecked(col 
4:int, val 2) -> 14:int
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int)
@@ -253,8 +253,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [5, 13]
-                    selectExpressions: LongColAddLongScalarChecked(col 5:int, 
val 2) -> 13:int
+                    projectedOutputColumnNums: [5, 14]
+                    selectExpressions: LongColAddLongScalarChecked(col 5:int, 
val 2) -> 14:int
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int)
@@ -360,8 +360,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [5, 13]
-                    selectExpressions: LongColMultiplyLongScalarChecked(col 
5:int, val 2) -> 13:int
+                    projectedOutputColumnNums: [5, 14]
+                    selectExpressions: LongColMultiplyLongScalarChecked(col 
5:int, val 2) -> 14:int
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int)
@@ -467,8 +467,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [0, 13]
-                    selectExpressions: LongColSubtractLongScalarChecked(col 
0:tinyint, val 2) -> 13:tinyint
+                    projectedOutputColumnNums: [0, 14]
+                    selectExpressions: LongColSubtractLongScalarChecked(col 
0:tinyint, val 2) -> 14:tinyint
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: tinyint)
@@ -576,8 +576,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [1, 13]
-                    selectExpressions: LongColAddLongScalarChecked(col 
1:tinyint, val 2) -> 13:int
+                    projectedOutputColumnNums: [1, 14]
+                    selectExpressions: LongColAddLongScalarChecked(col 
1:tinyint, val 2) -> 14:int
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: tinyint)
@@ -683,8 +683,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [3, 13]
-                    selectExpressions: LongColMultiplyLongScalarChecked(col 
3:smallint, val 2) -> 13:int
+                    projectedOutputColumnNums: [3, 14]
+                    selectExpressions: LongColMultiplyLongScalarChecked(col 
3:smallint, val 2) -> 14:int
                 Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: smallint)
@@ -936,8 +936,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [2, 3, 5]
-                    selectExpressions: LongColSubtractLongColumnChecked(col 
2:int, col 3:int) -> 5:int
+                    projectedOutputColumnNums: [2, 3, 6]
+                    selectExpressions: LongColSubtractLongColumnChecked(col 
2:int, col 3:int) -> 6:int
                 Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE 
Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col2 (type: int)

http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/vectorized_case.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorized_case.q.out 
b/ql/src/test/results/clientpositive/vectorized_case.q.out
index 0cc36bd..58b01a7 100644
--- a/ql/src/test/results/clientpositive/vectorized_case.q.out
+++ b/ql/src/test/results/clientpositive/vectorized_case.q.out
@@ -70,8 +70,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [1, 17, 21]
-                    selectExpressions: IfExprColumnCondExpr(col 13:boolean, 
col 14:stringcol 16:string)(children: LongColEqualLongScalar(col 1:smallint, 
val 418) -> 13:boolean, ConstantVectorExpression(val a) -> 14:string, 
IfExprStringScalarStringScalar(col 15:boolean, val b, val c)(children: 
LongColEqualLongScalar(col 1:smallint, val 12205) -> 15:boolean) -> 16:string) 
-> 17:string, IfExprColumnCondExpr(col 15:boolean, col 18:stringcol 
20:string)(children: LongColEqualLongScalar(col 1:smallint, val 418) -> 
15:boolean, ConstantVectorExpression(val a) -> 18:string, 
IfExprStringScalarStringScalar(col 19:boolean, val b, val c)(children: 
LongColEqualLongScalar(col 1:smallint, val 12205) -> 19:boolean) -> 20:string) 
-> 21:string
+                    projectedOutputColumnNums: [1, 17, 22]
+                    selectExpressions: IfExprColumnCondExpr(col 13:boolean, 
col 14:stringcol 16:string)(children: LongColEqualLongScalar(col 1:smallint, 
val 418) -> 13:boolean, ConstantVectorExpression(val a) -> 14:string, 
IfExprStringScalarStringScalar(col 15:boolean, val b, val c)(children: 
LongColEqualLongScalar(col 1:smallint, val 12205) -> 15:boolean) -> 16:string) 
-> 17:string, IfExprColumnCondExpr(col 18:boolean, col 19:stringcol 
21:string)(children: LongColEqualLongScalar(col 1:smallint, val 418) -> 
18:boolean, ConstantVectorExpression(val a) -> 19:string, 
IfExprStringScalarStringScalar(col 20:boolean, val b, val c)(children: 
LongColEqualLongScalar(col 1:smallint, val 12205) -> 20:boolean) -> 21:string) 
-> 22:string
                 Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
                 File Output Operator
                   compressed: false
@@ -98,7 +98,7 @@ STAGE PLANS:
               includeColumns: [1]
               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: [bigint, string, bigint, string, string, 
string, bigint, string, string]
+              scratchColumnTypeNames: [bigint, string, bigint, string, string, 
bigint, string, bigint, string, string]
 
   Stage: Stage-0
     Fetch Operator
@@ -296,13 +296,13 @@ STAGE PLANS:
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [13, 14]
-                  selectExpressions: IfExprLongScalarLongScalar(col 
14:boolean, val 1, val 0)(children: LongColEqualLongScalar(col 13:int, val 
0)(children: LongColModuloLongScalar(col 2:int, val 2) -> 13:int) -> 
14:boolean) -> 13:int, IfExprLongScalarLongScalar(col 15:boolean, val 1, val 
0)(children: LongColEqualLongScalar(col 14:int, val 1)(children: 
LongColModuloLongScalar(col 2:int, val 2) -> 14:int) -> 15:boolean) -> 14:int
+                  projectedOutputColumnNums: [15, 18]
+                  selectExpressions: IfExprLongScalarLongScalar(col 
14:boolean, val 1, val 0)(children: LongColEqualLongScalar(col 13:int, val 
0)(children: LongColModuloLongScalar(col 2:int, val 2) -> 13:int) -> 
14:boolean) -> 15:int, IfExprLongScalarLongScalar(col 17:boolean, val 1, val 
0)(children: LongColEqualLongScalar(col 16:int, val 1)(children: 
LongColModuloLongScalar(col 2:int, val 2) -> 16:int) -> 17:boolean) -> 18:int
               Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
               Group By Operator
                 aggregations: sum(_col0), sum(_col1)
                 Group By Vectorization:
-                    aggregators: VectorUDAFSumLong(col 13:int) -> bigint, 
VectorUDAFSumLong(col 14:int) -> bigint
+                    aggregators: VectorUDAFSumLong(col 15:int) -> bigint, 
VectorUDAFSumLong(col 18:int) -> bigint
                     className: VectorGroupByOperator
                     groupByMode: HASH
                     native: false
@@ -335,7 +335,7 @@ STAGE PLANS:
               includeColumns: [2]
               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: [bigint, bigint, bigint]
+              scratchColumnTypeNames: [bigint, bigint, bigint, bigint, bigint, 
bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -415,13 +415,13 @@ STAGE PLANS:
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [13, 14]
-                  selectExpressions: IfExprLongColumnLongScalar(col 
14:boolean, col 2:int, val 0)(children: LongColEqualLongScalar(col 13:int, val 
0)(children: LongColModuloLongScalar(col 2:int, val 2) -> 13:int) -> 
14:boolean) -> 13:int, IfExprLongColumnLongScalar(col 15:boolean, col 2:int, 
val 0)(children: LongColEqualLongScalar(col 14:int, val 1)(children: 
LongColModuloLongScalar(col 2:int, val 2) -> 14:int) -> 15:boolean) -> 14:int
+                  projectedOutputColumnNums: [15, 18]
+                  selectExpressions: IfExprLongColumnLongScalar(col 
14:boolean, col 2:int, val 0)(children: LongColEqualLongScalar(col 13:int, val 
0)(children: LongColModuloLongScalar(col 2:int, val 2) -> 13:int) -> 
14:boolean) -> 15:int, IfExprLongColumnLongScalar(col 17:boolean, col 2:int, 
val 0)(children: LongColEqualLongScalar(col 16:int, val 1)(children: 
LongColModuloLongScalar(col 2:int, val 2) -> 16:int) -> 17:boolean) -> 18:int
               Statistics: Num rows: 12288 Data size: 2907994 Basic stats: 
COMPLETE Column stats: NONE
               Group By Operator
                 aggregations: sum(_col0), sum(_col1)
                 Group By Vectorization:
-                    aggregators: VectorUDAFSumLong(col 13:int) -> bigint, 
VectorUDAFSumLong(col 14:int) -> bigint
+                    aggregators: VectorUDAFSumLong(col 15:int) -> bigint, 
VectorUDAFSumLong(col 18:int) -> bigint
                     className: VectorGroupByOperator
                     groupByMode: HASH
                     native: false
@@ -454,7 +454,7 @@ STAGE PLANS:
               includeColumns: [2]
               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: [bigint, bigint, bigint]
+              scratchColumnTypeNames: [bigint, bigint, bigint, bigint, bigint, 
bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

Reply via email to