You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by kg...@apache.org on 2018/12/06 11:11:42 UTC
[06/21] hive git commit: HIVE-20985: If select operator inputs are
temporary columns vectorization may reuse some of them as output (Zoltan
Haindrich reviewed by Teddy Choi)
http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/spark/vectorization_3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/vectorization_3.q.out b/ql/src/test/results/clientpositive/spark/vectorization_3.q.out
index 1e78ef5..e067ec4 100644
--- a/ql/src/test/results/clientpositive/spark/vectorization_3.q.out
+++ b/ql/src/test/results/clientpositive/spark/vectorization_3.q.out
@@ -81,7 +81,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
@@ -90,13 +90,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
@@ -129,7 +129,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
Reduce Vectorization:
@@ -164,8 +164,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: 112 Basic stats: COMPLETE Column stats: NONE
File Output Operator
compressed: false
http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/spark/vectorization_4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/vectorization_4.q.out b/ql/src/test/results/clientpositive/spark/vectorization_4.q.out
index 08d3b0b..0342809 100644
--- a/ql/src/test/results/clientpositive/spark/vectorization_4.q.out
+++ b/ql/src/test/results/clientpositive/spark/vectorization_4.q.out
@@ -159,8 +159,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: 36 Basic stats: COMPLETE Column stats: NONE
File Output Operator
compressed: false
http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/spark/vectorization_5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/vectorization_5.q.out b/ql/src/test/results/clientpositive/spark/vectorization_5.q.out
index 82973c6..1a0ac89 100644
--- a/ql/src/test/results/clientpositive/spark/vectorization_5.q.out
+++ b/ql/src/test/results/clientpositive/spark/vectorization_5.q.out
@@ -152,8 +152,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: 28 Basic stats: COMPLETE Column stats: NONE
File Output Operator
compressed: false
http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/spark/vectorization_9.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/vectorization_9.q.out b/ql/src/test/results/clientpositive/spark/vectorization_9.q.out
index cb7da29..0efe4b4 100644
--- a/ql/src/test/results/clientpositive/spark/vectorization_9.q.out
+++ b/ql/src/test/results/clientpositive/spark/vectorization_9.q.out
@@ -160,8 +160,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: 2048 Data size: 484665 Basic stats: COMPLETE Column stats: NONE
File Output Operator
compressed: false
http://git-wip-us.apache.org/repos/asf/hive/blob/8b968c7e/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out b/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out
index 62861e3..18159aa 100644
--- a/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out
+++ b/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out
@@ -39,8 +39,8 @@ STAGE PLANS:
Select Vectorization:
className: VectorSelectOperator
native: true
- projectedOutputColumnNums: [2, 14, 0, 15, 3, 16, 5, 13]
- selectExpressions: DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 2:int) -> 13:double) -> 14:double, DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 0:tinyint) -> 13:double) -> 15:double, DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 3:bigint) -> 13:double) -> 16:double, DoubleColDivideDoubleScalar(col 5:double, val 0.0) -> 13:double
+ projectedOutputColumnNums: [2, 14, 0, 16, 3, 18, 5, 19]
+ selectExpressions: DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 2:int) -> 13:double) -> 14:double, DoubleColDivideDoubleScalar(col 15:double, val 0.0)(children: CastLongToDouble(col 0:tinyint) -> 15:double) -> 16:double, DoubleColDivideDoubleScalar(col 17:double, val 0.0)(children: CastLongToDouble(col 3:bigint) -> 17:double) -> 18:double, DoubleColDivideDoubleScalar(col 5:double, val 0.0) -> 19:double
Statistics: Num rows: 12288 Data size: 2907994 Basic stats: COMPLETE Column stats: NONE
Reduce Output Operator
key expressions: _col0 (type: int), _col2 (type: tinyint), _col4 (type: bigint), _col6 (type: double)
@@ -262,8 +262,8 @@ STAGE PLANS:
Select Vectorization:
className: VectorSelectOperator
native: true
- projectedOutputColumnNums: [13, 16, 18]
- selectExpressions: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 13:bigint, DoubleColDivideDoubleColumn(col 5:double, col 15:double)(children: CastLongToDouble(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 14:bigint) -> 15:double) -> 16:double, DecimalScalarDivideDecimalColumn(val 1.2, col 17:decimal(19,0))(children: CastLongToDecimal(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 14:bigint) -> 17:decimal(19,0)) -> 18:decimal(22,21)
+ projectedOutputColumnNums: [13, 16, 19]
+ selectExpressions: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 13:bigint, DoubleColDivideDoubleColumn(col 5:double, col 15:double)(children: CastLongToDouble(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 14:bigint) -> 15:double) -> 16:double, DecimalScalarDivideDecimalColumn(val 1.2, col 18:decimal(19,0))(children: CastLongToDecimal(col 17:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 17:bigint) -> 18:decimal(19,0)) -> 19:decimal(22,21)
Statistics: Num rows: 1365 Data size: 323031 Basic stats: COMPLETE Column stats: NONE
Reduce Output Operator
key expressions: _col0 (type: bigint), _col1 (type: double), _col2 (type: decimal(22,21))
@@ -484,8 +484,8 @@ STAGE PLANS:
Select Vectorization:
className: VectorSelectOperator
native: true
- projectedOutputColumnNums: [13, 16, 17, 18, 15, 19]
- selectExpressions: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 13:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 17:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 18:double, DoubleScalarDivideDoubleColumn(val 3.0, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 15:double, DoubleScalarDivideDoubleColumn(val 1.2, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 19:double
+ projectedOutputColumnNums: [13, 16, 19, 22, 24, 26]
+ selectExpressions: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 13:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 17:double, col 18:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 17:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 18:double) -> 19:double, DoubleColDivideDoubleColumn(col 20:double, col 21:double)(children: CastLongToDouble(col 3:bigint) -> 20:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 21:double) -> 22:double, DoubleScalarDivideDoubleColumn(val 3.0, col 23:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 23:double) -> 24:double, DoubleScalarDivideDoubleColumn(val 1.2, col 25:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 25:double) -> 26:double
Statistics: Num rows: 1365 Data size: 323031 Basic stats: COMPLETE Column stats: NONE
Reduce Output Operator
key expressions: _col0 (type: double), _col1 (type: double), _col2 (type: double), _col3 (type: double), _col4 (type: double), _col5 (type: double)
@@ -706,8 +706,8 @@ STAGE PLANS:
Select Vectorization:
className: VectorSelectOperator
native: true
- projectedOutputColumnNums: [2, 3, 0, 16, 17, 18, 19, 20, 14]
- selectExpressions: DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 2:int) -> 13:double, CastLongToDouble(col 14:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 14:int) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 13:double, CastLongToDouble(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 14:bigint) -> 15:double) -> 17:double, DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 0:tinyint) -> 13:double, CastLongToDouble(col 0:tinyint) -> 15:double) -> 18:double, LongColModuloLongColumn(col 2:int, col 14:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 14:int) -> 19:int, LongColModuloLongColumn(col 3:bigint, col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 14:bigint) -> 20:bigint, LongCol
ModuloLongColumn(col 0:tinyint, col 0:tinyint) -> 14:tinyint
+ projectedOutputColumnNums: [2, 3, 0, 16, 20, 23, 25, 27, 28]
+ selectExpressions: DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 2:int) -> 13:double, CastLongToDouble(col 14:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 14:int) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 17:double, col 19:double)(children: CastLongToDouble(col 3:bigint) -> 17:double, CastLongToDouble(col 18:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 18:bigint) -> 19:double) -> 20:double, DoubleColDivideDoubleColumn(col 21:double, col 22:double)(children: CastLongToDouble(col 0:tinyint) -> 21:double, CastLongToDouble(col 0:tinyint) -> 22:double) -> 23:double, LongColModuloLongColumn(col 2:int, col 24:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 24:int) -> 25:int, LongColModuloLongColumn(col 3:bigint, col 26:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 26:bigint) -> 27:bigint, LongCol
ModuloLongColumn(col 0:tinyint, col 0:tinyint) -> 28:tinyint
Statistics: Num rows: 12288 Data size: 2907994 Basic stats: COMPLETE Column stats: NONE
Reduce Output Operator
key expressions: _col0 (type: int), _col1 (type: bigint), _col2 (type: tinyint), _col3 (type: double), _col4 (type: double), _col5 (type: double), _col6 (type: int), _col7 (type: bigint), _col8 (type: tinyint)