http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupColumn.txt index 9114932..a72b882 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupColumn.txt @@ -477,11 +477,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode(
http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupScalarBase.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupScalarBase.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupScalarBase.txt index b56d451..8b1c366 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupScalarBase.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupColumnCompareStringGroupScalarBase.txt @@ -18,8 +18,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; import org.apache.hadoop.hive.ql.exec.vector.expressions.StringExpr; import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector; @@ -154,9 +152,4 @@ public abstract class <ClassName> extends VectorExpression { this.value = value; } - @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + new String(value, StandardCharsets.UTF_8); - } - } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupScalarCompareStringGroupColumnBase.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupScalarCompareStringGroupColumnBase.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupScalarCompareStringGroupColumnBase.txt index 4fb5035..930069c 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupScalarCompareStringGroupColumnBase.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringGroupScalarCompareStringGroupColumnBase.txt @@ -18,8 +18,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; import org.apache.hadoop.hive.ql.exec.vector.expressions.StringExpr; import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector; @@ -157,10 +155,4 @@ public abstract class <ClassName> extends VectorExpression { public void setValue(byte[] value) { this.value = value; } - - @Override - public String vectorExpressionParameters() { - return "val " + new String(value, StandardCharsets.UTF_8) + ", col " + + colNum; - } - } http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnBetween.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnBetween.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnBetween.txt index 7863b16..4298d79 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnBetween.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnBetween.txt @@ -154,11 +154,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", left " + leftValue.toString() + ", right " + rightValue.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleColumn.txt index 8873826..d10be96 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleColumn.txt @@ -167,11 +167,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleScalar.txt index 8583eee..31c3f6b 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareLongDoubleScalar.txt @@ -150,11 +150,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampColumn.txt index eeb73c9..31dce1c 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampColumn.txt @@ -436,11 +436,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampScalar.txt index 23790a5..bab8508 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampColumnCompareTimestampScalar.txt @@ -147,11 +147,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareLongDoubleColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareLongDoubleColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareLongDoubleColumn.txt index 0e10779..5e418de 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareLongDoubleColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareLongDoubleColumn.txt @@ -43,11 +43,6 @@ public class <ClassName> extends <BaseClassName> { } @Override - public String vectorExpressionParameters() { - return "val " + value + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareTimestampColumn.txt index 5a6def3..ff5d11e 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTimestampScalarCompareTimestampColumn.txt @@ -149,11 +149,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/FilterTruncStringColumnBetween.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterTruncStringColumnBetween.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterTruncStringColumnBetween.txt index 781c9b8..94a174d 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterTruncStringColumnBetween.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterTruncStringColumnBetween.txt @@ -18,8 +18,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.common.type.<TruncStringHiveType>; import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; @@ -180,13 +178,7 @@ public class <ClassName> extends VectorExpression { public void setRight(byte[] value) { this.right = value; } - - @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", left " + new String(left, StandardCharsets.UTF_8) + - ", right " + new String(right, StandardCharsets.UTF_8); - } - + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IfExprColumnScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IfExprColumnScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/IfExprColumnScalar.txt index 9f4bb75..3a75a26 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IfExprColumnScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IfExprColumnScalar.txt @@ -160,11 +160,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + arg1Column + ", col " + arg2Column + ", val "+ arg3Scalar; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarColumn.txt index 487d894..648b776 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarColumn.txt @@ -162,11 +162,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + arg1Column + ", val "+ arg2Scalar + ", col "+ arg3Column; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarScalar.txt index 5651d15..def9863 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IfExprScalarScalar.txt @@ -147,11 +147,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + arg1Column + ", val "+ arg2Scalar + ", val "+ arg3Scalar; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateColumn.txt index 49a1950..8e3a419 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateColumn.txt @@ -180,11 +180,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateScalar.txt index 283352d..ad65d52 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticDateScalar.txt @@ -141,11 +141,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampColumn.txt index 9eba829..858c3d7 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampColumn.txt @@ -170,11 +170,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampScalar.txt index 9a06822..66fffd2 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthColumnArithmeticTimestampScalar.txt @@ -139,11 +139,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticDateColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticDateColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticDateColumn.txt index a5d9877..ddde913 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticDateColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticDateColumn.txt @@ -155,11 +155,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticTimestampColumn.txt index 9a0d397..cbb7021 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/IntervalYearMonthScalarArithmeticTimestampColumn.txt @@ -143,11 +143,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampColumn.txt index cff2deb..9ccfaac 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampColumn.txt @@ -139,11 +139,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampScalar.txt index 8308a30..c7d8c65 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleColumnCompareTimestampScalar.txt @@ -129,10 +129,6 @@ public class <ClassName> extends VectorExpression { return "long"; } - @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value; - } @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleScalarCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleScalarCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleScalarCompareTimestampColumn.txt index 6aa30e4..d47bc10 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleScalarCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/LongDoubleScalarCompareTimestampColumn.txt @@ -129,11 +129,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumn.txt index 8473599..4fcbdc0 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumn.txt @@ -146,11 +146,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnDecimal.txt index d3fd9bd..ea55bec 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnDecimal.txt @@ -129,11 +129,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnWithConvert.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnWithConvert.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnWithConvert.txt new file mode 100644 index 0000000..91887c8 --- /dev/null +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarArithmeticColumnWithConvert.txt @@ -0,0 +1,163 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; + +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; +import org.apache.hadoop.hive.ql.exec.vector.VectorExpressionDescriptor; +import org.apache.hadoop.hive.ql.exec.vector.*; + + +/* + * Because of the templatized nature of the code, either or both + * of these ColumnVector imports may be needed. Listing both of them + * rather than using ....vectorization.*; + */ +import org.apache.hadoop.hive.ql.exec.vector.DoubleColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.expressions.NullUtil; + +/** + * Generated from template ScalarArithmeticColumnWithConvert.txt. + * Implements a vectorized arithmetic operator with a scalar on the left and a + * column vector on the right. The result is output to an output column vector. + */ +public class <ClassName> extends VectorExpression { + + private static final long serialVersionUID = 1L; + + private int colNum; + private <VectorOperandType1> value; + private int outputColumn; + + public <ClassName>(<VectorOperandType1> value, int colNum, int outputColumn) { + this.colNum = colNum; + this.value = <TypeConversion1>(value); + this.outputColumn = outputColumn; + } + + public <ClassName>() { + } + + @Override + /** + * Method to evaluate scalar-column operation in vectorized fashion. + * + * @batch a package of rows with each column stored in a vector + */ + public void evaluate(VectorizedRowBatch batch) { + + if (childExpressions != null) { + super.evaluateChildren(batch); + } + + <InputColumnVectorType> inputColVector = (<InputColumnVectorType>) batch.cols[colNum]; + <OutputColumnVectorType> outputColVector = (<OutputColumnVectorType>) batch.cols[outputColumn]; + int[] sel = batch.selected; + boolean[] inputIsNull = inputColVector.isNull; + boolean[] outputIsNull = outputColVector.isNull; + outputColVector.noNulls = inputColVector.noNulls; + outputColVector.isRepeating = inputColVector.isRepeating; + int n = batch.size; + <VectorOperandType2>[] vector = inputColVector.vector; + <VectorReturnType>[] outputVector = outputColVector.vector; + + // return immediately if batch is empty + if (n == 0) { + return; + } + + if (inputColVector.isRepeating) { + outputVector[0] = value <OperatorSymbol> <TypeConversion2>(vector[0]); + + // Even if there are no nulls, we always copy over entry 0. Simplifies code. + outputIsNull[0] = inputIsNull[0]; + } else if (inputColVector.noNulls) { + if (batch.selectedInUse) { + for(int j = 0; j != n; j++) { + int i = sel[j]; + outputVector[i] = value <OperatorSymbol> <TypeConversion2>(vector[i]); + } + } else { + for(int i = 0; i != n; i++) { + outputVector[i] = value <OperatorSymbol> <TypeConversion2>(vector[i]); + } + } + } else { /* there are nulls */ + if (batch.selectedInUse) { + for(int j = 0; j != n; j++) { + int i = sel[j]; + outputVector[i] = value <OperatorSymbol> <TypeConversion2>(vector[i]); + outputIsNull[i] = inputIsNull[i]; + } + } else { + for(int i = 0; i != n; i++) { + outputVector[i] = value <OperatorSymbol> <TypeConversion2>(vector[i]); + } + System.arraycopy(inputIsNull, 0, outputIsNull, 0, n); + } + } + + NullUtil.setNullOutputEntriesColScalar(outputColVector, batch.selectedInUse, sel, n); + } + + @Override + public int getOutputColumn() { + return outputColumn; + } + + @Override + public String getOutputType() { + return "<VectorReturnType>"; + } + + public int getColNum() { + return colNum; + } + + public void setColNum(int colNum) { + this.colNum = colNum; + } + + public <VectorOperandType1> getValue() { + return value; + } + + public void setValue(<VectorOperandType1> value) { + this.value = value; + } + + public void setOutputColumn(int outputColumn) { + this.outputColumn = outputColumn; + } + + @Override + public VectorExpressionDescriptor.Descriptor getDescriptor() { + return (new VectorExpressionDescriptor.Builder()) + .setMode( + VectorExpressionDescriptor.Mode.PROJECTION) + .setNumArguments(2) + .setArgumentTypes( + VectorExpressionDescriptor.ArgumentType.getType("<OperandType1>"), + VectorExpressionDescriptor.ArgumentType.getType("<OperandType2>")) + .setInputExpressionTypes( + VectorExpressionDescriptor.InputExpressionType.SCALAR, + VectorExpressionDescriptor.InputExpressionType.COLUMN).build(); + } +} http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarCompareColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarCompareColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarCompareColumn.txt index 6f9e2e2..e6e59f5 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ScalarCompareColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarCompareColumn.txt @@ -149,11 +149,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumn.txt index 8e6e8a9..f8a8457 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumn.txt @@ -162,11 +162,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumnDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumnDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumnDecimal.txt index 1014978..c8a5d17 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumnDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ScalarDivideColumnDecimal.txt @@ -131,11 +131,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupColumn.txt index 747f707..e881037 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupColumn.txt @@ -493,11 +493,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupScalarBase.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupScalarBase.txt b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupScalarBase.txt index d9530d6..92bf27a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupScalarBase.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareStringGroupScalarBase.txt @@ -18,8 +18,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; import org.apache.hadoop.hive.ql.exec.vector.expressions.StringExpr; import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector; @@ -157,8 +155,4 @@ public abstract class <ClassName> extends VectorExpression { this.outputColumn = outputColumn; } - @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + new String(value, StandardCharsets.UTF_8); - } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareTruncStringScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareTruncStringScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareTruncStringScalar.txt index 8e36fc0..8a92f54 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareTruncStringScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupColumnCompareTruncStringScalar.txt @@ -20,8 +20,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; import org.apache.hadoop.hive.ql.exec.vector.expressions.gen.<BaseClassName>; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.common.type.<TruncStringHiveType>; import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; @@ -46,11 +44,6 @@ public class <ClassName> extends <BaseClassName> { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + new String(value, StandardCharsets.UTF_8); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupScalarCompareStringGroupColumnBase.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupScalarCompareStringGroupColumnBase.txt b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupScalarCompareStringGroupColumnBase.txt index 5eed703..238dc93 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/StringGroupScalarCompareStringGroupColumnBase.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/StringGroupScalarCompareStringGroupColumnBase.txt @@ -18,8 +18,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; import org.apache.hadoop.hive.ql.exec.vector.expressions.StringExpr; import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector; @@ -156,9 +154,4 @@ public abstract class <ClassName> extends VectorExpression { public void setOutputColumn(int outputColumn) { this.outputColumn = outputColumn; } - - @Override - public String vectorExpressionParameters() { - return "val " + new String(value, StandardCharsets.UTF_8) + ", col " + + colNum; - } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateColumn.txt index 7aeff81..27e083d 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateColumn.txt @@ -171,11 +171,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateScalar.txt index f8cb880..8b91a4a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticDateScalar.txt @@ -132,11 +132,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthColumn.txt index 989e2f5..4ac2174 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthColumn.txt @@ -170,11 +170,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthScalar.txt index a90b1b2..9382aca 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticIntervalYearMonthScalar.txt @@ -128,11 +128,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampColumn.txt index ad43cac..5eaa450 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampColumn.txt @@ -161,11 +161,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampScalar.txt index 32b49a3..c6c872f 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnArithmeticTimestampScalar.txt @@ -130,11 +130,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleColumn.txt index 7267148..0fc402d 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleColumn.txt @@ -138,11 +138,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleScalar.txt index 2be05f3..e0ae206 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareLongDoubleScalar.txt @@ -129,11 +129,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampColumn.txt index 2710fa4..f9fc425 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampColumn.txt @@ -143,11 +143,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum1 + ", col " + + colNum2; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampScalar.txt index 32647f2..90701ec 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampColumnCompareTimestampScalar.txt @@ -133,11 +133,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "col " + colNum + ", val " + value.toString(); - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticDateColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticDateColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticDateColumn.txt index dea4db2..f958be8 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticDateColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticDateColumn.txt @@ -153,11 +153,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticIntervalYearMonthColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticIntervalYearMonthColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticIntervalYearMonthColumn.txt index e82b9e2..585027a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticIntervalYearMonthColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticIntervalYearMonthColumn.txt @@ -152,11 +152,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticTimestampColumn.txt index 0d8a26b..996c86a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarArithmeticTimestampColumn.txt @@ -143,11 +143,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarCompareTimestampColumn.txt index ec0a395..6506c93 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TimestampScalarCompareTimestampColumn.txt @@ -135,11 +135,6 @@ public class <ClassName> extends VectorExpression { } @Override - public String vectorExpressionParameters() { - return "val " + value.toString() + ", col " + + colNum; - } - - @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/ExpressionTemplates/TruncStringScalarCompareStringGroupColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/TruncStringScalarCompareStringGroupColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/TruncStringScalarCompareStringGroupColumn.txt index 26da73a..a9a3b6d 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/TruncStringScalarCompareStringGroupColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/TruncStringScalarCompareStringGroupColumn.txt @@ -20,8 +20,6 @@ package org.apache.hadoop.hive.ql.exec.vector.expressions.gen; import org.apache.hadoop.hive.ql.exec.vector.expressions.gen.<BaseClassName>; -import java.nio.charset.StandardCharsets; - import org.apache.hadoop.hive.common.type.<TruncStringHiveType>; import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFAvg.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFAvg.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFAvg.txt index 4393c3b..d153fd6 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFAvg.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFAvg.txt @@ -85,12 +85,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - transient private Object[] partialResult; transient private LongWritable resultCount; transient private DoubleWritable resultSum; http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMax.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMax.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMax.txt index 7468c2f..46d66bd 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMax.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMax.txt @@ -77,12 +77,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - private transient VectorExpressionWriter resultWriter; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxDecimal.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxDecimal.txt index 6b91fc2..9a48171 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxDecimal.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxDecimal.txt @@ -83,12 +83,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - private transient VectorExpressionWriter resultWriter; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxIntervalDayTime.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxIntervalDayTime.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxIntervalDayTime.txt index 749e97e..3cdf7e2 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxIntervalDayTime.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxIntervalDayTime.txt @@ -81,12 +81,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - private transient VectorExpressionWriter resultWriter; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxString.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxString.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxString.txt index 9dfc147..cdce457 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxString.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxString.txt @@ -93,12 +93,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - transient private Text result; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxTimestamp.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxTimestamp.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxTimestamp.txt index 32ecb34..7e34965 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxTimestamp.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFMinMaxTimestamp.txt @@ -83,12 +83,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - private transient VectorExpressionWriter resultWriter; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFSum.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFSum.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFSum.txt index bd0f14d..cc7e54d 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFSum.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFSum.txt @@ -78,12 +78,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - transient private final <OutputType> result; public <ClassName>(VectorExpression inputExpression) { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVar.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVar.txt index dc9d4b1..c6c9c52 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVar.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVar.txt @@ -84,12 +84,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - transient private LongWritable resultCount; transient private DoubleWritable resultSum; transient private DoubleWritable resultVariance; http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVarDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVarDecimal.txt b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVarDecimal.txt index 01062a9..8fc94ba 100644 --- a/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVarDecimal.txt +++ b/ql/src/gen/vectorization/UDAFTemplates/VectorUDAFVarDecimal.txt @@ -111,12 +111,6 @@ public class <ClassName> extends VectorAggregateExpression { } private VectorExpression inputExpression; - - @Override - public VectorExpression inputExpression() { - return inputExpression; - } - transient private LongWritable resultCount; transient private DoubleWritable resultSum; transient private DoubleWritable resultVariance; http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java index 74cec3e..b8a4693 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java @@ -20,8 +20,6 @@ package org.apache.hadoop.hive.ql.exec; import static org.apache.hadoop.hive.serde.serdeConstants.STRING_TYPE_NAME; -import org.apache.commons.lang3.tuple.ImmutablePair; - import java.io.OutputStream; import java.io.PrintStream; import java.io.Serializable; @@ -37,68 +35,30 @@ import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import java.util.Stack; import java.util.Map.Entry; import java.util.Set; import java.util.TreeMap; import org.apache.hadoop.fs.Path; -import org.apache.hadoop.hive.common.ObjectPair; import org.apache.hadoop.hive.common.jsonexplain.JsonParser; import org.apache.hadoop.hive.common.jsonexplain.JsonParserFactory; -import org.apache.hadoop.hive.conf.HiveConf; -import org.apache.hadoop.hive.conf.Validator.StringSet; import org.apache.hadoop.hive.metastore.api.FieldSchema; import org.apache.hadoop.hive.ql.Driver; import org.apache.hadoop.hive.ql.DriverContext; -import org.apache.hadoop.hive.ql.exec.spark.SparkTask; -import org.apache.hadoop.hive.ql.exec.tez.TezTask; -import org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator; -import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; -import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; -import org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorAggregateExpression; -import org.apache.hadoop.hive.ql.plan.MapJoinDesc; -import org.apache.hadoop.hive.ql.plan.ReduceSinkDesc; import org.apache.hadoop.hive.ql.hooks.ReadEntity; -import org.apache.hadoop.hive.ql.io.AcidUtils; -import org.apache.hadoop.hive.ql.lib.DefaultGraphWalker; -import org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher; -import org.apache.hadoop.hive.ql.lib.Dispatcher; -import org.apache.hadoop.hive.ql.lib.GraphWalker; -import org.apache.hadoop.hive.ql.lib.Node; -import org.apache.hadoop.hive.ql.lib.NodeProcessor; -import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx; -import org.apache.hadoop.hive.ql.lib.Rule; import org.apache.hadoop.hive.ql.metadata.Table; import org.apache.hadoop.hive.ql.optimizer.physical.StageIDsRearranger; -import org.apache.hadoop.hive.ql.optimizer.physical.Vectorizer; -import org.apache.hadoop.hive.ql.optimizer.physical.VectorizerReason; import org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer; -import org.apache.hadoop.hive.ql.parse.ExplainConfiguration.VectorizationDetailLevel; -import org.apache.hadoop.hive.ql.parse.SemanticException; -import org.apache.hadoop.hive.ql.plan.BaseWork; import org.apache.hadoop.hive.ql.plan.Explain; import org.apache.hadoop.hive.ql.plan.Explain.Level; -import org.apache.hadoop.hive.ql.plan.Explain.Vectorization; -import org.apache.hadoop.hive.ql.plan.AggregationDesc; import org.apache.hadoop.hive.ql.plan.ExplainWork; -import org.apache.hadoop.hive.ql.plan.GroupByDesc; import org.apache.hadoop.hive.ql.plan.HiveOperation; -import org.apache.hadoop.hive.ql.plan.MapredWork; -import org.apache.hadoop.hive.ql.plan.MapWork; -import org.apache.hadoop.hive.ql.plan.ReduceWork; import org.apache.hadoop.hive.ql.plan.OperatorDesc; import org.apache.hadoop.hive.ql.plan.SparkWork; -import org.apache.hadoop.hive.ql.plan.TableDesc; import org.apache.hadoop.hive.ql.plan.TezWork; -import org.apache.hadoop.hive.ql.plan.VectorReduceSinkInfo; -import org.apache.hadoop.hive.ql.plan.VectorReduceSinkDesc; -import org.apache.hadoop.hive.ql.plan.VectorGroupByDesc; import org.apache.hadoop.hive.ql.plan.api.StageType; import org.apache.hadoop.hive.ql.security.authorization.AuthorizationFactory; import org.apache.hadoop.hive.ql.session.SessionState; -import org.apache.hadoop.hive.serde2.Deserializer; -import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.io.IOUtils; import org.apache.hadoop.util.StringUtils; import org.apache.hive.common.util.AnnotationUtils; @@ -197,54 +157,6 @@ public class ExplainTask extends Task<ExplainWork> implements Serializable { return outJSONObject; } - private static String trueCondNameVectorizationEnabled = - HiveConf.ConfVars.HIVE_VECTORIZATION_ENABLED.varname + " IS true"; - private static String falseCondNameVectorizationEnabled = - HiveConf.ConfVars.HIVE_VECTORIZATION_ENABLED.varname + " IS false"; - - private ImmutablePair<Boolean, JSONObject> outputPlanVectorization(PrintStream out, boolean jsonOutput) - throws Exception { - - if (out != null) { - out.println("PLAN VECTORIZATION:"); - } - - JSONObject json = jsonOutput ? new JSONObject(new LinkedHashMap<>()) : null; - - HiveConf hiveConf = queryState.getConf(); - - boolean isVectorizationEnabled = HiveConf.getBoolVar(hiveConf, - HiveConf.ConfVars.HIVE_VECTORIZATION_ENABLED); - String isVectorizationEnabledCondName = - (isVectorizationEnabled ? - trueCondNameVectorizationEnabled : - falseCondNameVectorizationEnabled); - List<String> isVectorizationEnabledCondList = Arrays.asList(isVectorizationEnabledCondName); - - if (out != null) { - out.print(indentString(2)); - out.print("enabled: "); - out.println(isVectorizationEnabled); - out.print(indentString(2)); - if (!isVectorizationEnabled) { - out.print("enabledConditionsNotMet: "); - } else { - out.print("enabledConditionsMet: "); - } - out.println(isVectorizationEnabledCondList); - } - if (jsonOutput) { - json.put("enabled", isVectorizationEnabled); - if (!isVectorizationEnabled) { - json.put("enabledConditionsNotMet", isVectorizationEnabledCondList); - } else { - json.put("enabledConditionsMet", isVectorizationEnabledCondList); - } - } - - return new ImmutablePair<Boolean, JSONObject>(isVectorizationEnabled, jsonOutput ? json : null); - } - public JSONObject getJSONPlan(PrintStream out, ExplainWork work) throws Exception { return getJSONPlan(out, work.getRootTasks(), work.getFetchTask(), @@ -272,46 +184,26 @@ public class ExplainTask extends Task<ExplainWork> implements Serializable { ordered.add(fetchTask); } - boolean suppressOthersForVectorization = false; - if (this.work != null && this.work.isVectorization()) { - ImmutablePair<Boolean, JSONObject> planVecPair = outputPlanVectorization(out, jsonOutput); - - if (this.work.isVectorizationOnly()) { - // Suppress the STAGES if vectorization is off. - suppressOthersForVectorization = !planVecPair.left; - } + JSONObject jsonDependencies = outputDependencies(out, jsonOutput, appendTaskType, ordered); - if (out != null) { - out.println(); - } - - if (jsonOutput) { - outJSONObject.put("PLAN VECTORIZATION", planVecPair.right); - } + if (out != null) { + out.println(); } - if (!suppressOthersForVectorization) { - JSONObject jsonDependencies = outputDependencies(out, jsonOutput, appendTaskType, ordered); - - if (out != null) { - out.println(); - } - - if (jsonOutput) { - outJSONObject.put("STAGE DEPENDENCIES", jsonDependencies); - } + if (jsonOutput) { + outJSONObject.put("STAGE DEPENDENCIES", jsonDependencies); + } - // Go over all the tasks and dump out the plans - JSONObject jsonPlan = outputStagePlans(out, ordered, - jsonOutput, isExtended); + // Go over all the tasks and dump out the plans + JSONObject jsonPlan = outputStagePlans(out, ordered, + jsonOutput, isExtended); - if (jsonOutput) { - outJSONObject.put("STAGE PLANS", jsonPlan); - } + if (jsonOutput) { + outJSONObject.put("STAGE PLANS", jsonPlan); + } - if (fetchTask != null) { - fetchTask.setParentTasks(null); - } + if (fetchTask != null) { + fetchTask.setParentTasks(null); } return jsonOutput ? outJSONObject : null; @@ -710,64 +602,6 @@ public class ExplainTask extends Task<ExplainWork> implements Serializable { } } if (invokeFlag) { - Vectorization vectorization = xpl_note.vectorization(); - if (this.work != null && this.work.isVectorization()) { - - // The EXPLAIN VECTORIZATION option was specified. - final boolean desireOnly = this.work.isVectorizationOnly(); - final VectorizationDetailLevel desiredVecDetailLevel = - this.work.isVectorizationDetailLevel(); - - switch (vectorization) { - case NON_VECTORIZED: - // Display all non-vectorized leaf objects unless ONLY. - if (desireOnly) { - invokeFlag = false; - } - break; - case SUMMARY: - case OPERATOR: - case EXPRESSION: - case DETAIL: - if (vectorization.rank < desiredVecDetailLevel.rank) { - // This detail not desired. - invokeFlag = false; - } - break; - case SUMMARY_PATH: - case OPERATOR_PATH: - if (desireOnly) { - if (vectorization.rank < desiredVecDetailLevel.rank) { - // Suppress headers and all objects below. - invokeFlag = false; - } - } - break; - default: - throw new RuntimeException("Unknown EXPLAIN vectorization " + vectorization); - } - } else { - // Do not display vectorization objects. - switch (vectorization) { - case SUMMARY: - case OPERATOR: - case EXPRESSION: - case DETAIL: - invokeFlag = false; - break; - case NON_VECTORIZED: - // No action. - break; - case SUMMARY_PATH: - case OPERATOR_PATH: - // Always include headers since they contain non-vectorized objects, too. - break; - default: - throw new RuntimeException("Unknown EXPLAIN vectorization " + vectorization); - } - } - } - if (invokeFlag) { keyJSONObject = xpl_note.displayName(); if (out != null) { out.print(indentString(indent)); @@ -841,64 +675,6 @@ public class ExplainTask extends Task<ExplainWork> implements Serializable { } } if (invokeFlag) { - Vectorization vectorization = xpl_note.vectorization(); - if (this.work != null && this.work.isVectorization()) { - - // The EXPLAIN VECTORIZATION option was specified. - final boolean desireOnly = this.work.isVectorizationOnly(); - final VectorizationDetailLevel desiredVecDetailLevel = - this.work.isVectorizationDetailLevel(); - - switch (vectorization) { - case NON_VECTORIZED: - // Display all non-vectorized leaf objects unless ONLY. - if (desireOnly) { - invokeFlag = false; - } - break; - case SUMMARY: - case OPERATOR: - case EXPRESSION: - case DETAIL: - if (vectorization.rank < desiredVecDetailLevel.rank) { - // This detail not desired. - invokeFlag = false; - } - break; - case SUMMARY_PATH: - case OPERATOR_PATH: - if (desireOnly) { - if (vectorization.rank < desiredVecDetailLevel.rank) { - // Suppress headers and all objects below. - invokeFlag = false; - } - } - break; - default: - throw new RuntimeException("Unknown EXPLAIN vectorization " + vectorization); - } - } else { - // Do not display vectorization objects. - switch (vectorization) { - case SUMMARY: - case OPERATOR: - case EXPRESSION: - case DETAIL: - invokeFlag = false; - break; - case NON_VECTORIZED: - // No action. - break; - case SUMMARY_PATH: - case OPERATOR_PATH: - // Always include headers since they contain non-vectorized objects, too. - break; - default: - throw new RuntimeException("Unknown EXPLAIN vectorization " + vectorization); - } - } - } - if (invokeFlag) { Object val = null; try { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java index c070c4a..416606e 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java @@ -93,7 +93,7 @@ public class MapJoinOperator extends AbstractMapJoinOperator<MapJoinDesc> implem protected transient ReusableGetAdaptor[] hashMapRowGetters; private UnwrapRowContainer[] unwrapContainer; - protected transient Configuration hconf; + private transient Configuration hconf; private transient boolean hybridMapJoinLeftover; // whether there's spilled data to be processed protected transient MapJoinBytesTableContainer[] spilledMapJoinTables; // used to hold restored // spilled small tables http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java index af1fa66..038b96c 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java @@ -41,8 +41,6 @@ import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; import org.apache.hadoop.hive.ql.metadata.HiveException; import org.apache.hadoop.hive.ql.optimizer.spark.SparkPartitionPruningSinkDesc; import org.apache.hadoop.hive.ql.parse.spark.SparkPartitionPruningSinkOperator; -import org.apache.hadoop.hive.ql.plan.AbstractOperatorDesc; -import org.apache.hadoop.hive.ql.plan.AbstractVectorDesc; import org.apache.hadoop.hive.ql.plan.AppMasterEventDesc; import org.apache.hadoop.hive.ql.plan.CollectDesc; import org.apache.hadoop.hive.ql.plan.CommonMergeJoinDesc; @@ -75,7 +73,6 @@ import org.apache.hadoop.hive.ql.plan.SparkHashTableSinkDesc; import org.apache.hadoop.hive.ql.plan.TableScanDesc; import org.apache.hadoop.hive.ql.plan.UDTFDesc; import org.apache.hadoop.hive.ql.plan.UnionDesc; -import org.apache.hadoop.hive.ql.plan.VectorDesc; import com.google.common.base.Preconditions; @@ -145,8 +142,6 @@ public final class OperatorFactory { Class<? extends Operator<?>> opClass, CompilationOpContext cContext, T conf, VectorizationContext vContext) throws HiveException { try { - VectorDesc vectorDesc = ((AbstractOperatorDesc) conf).getVectorDesc(); - vectorDesc.setVectorOp(opClass); Operator<T> op = (Operator<T>) opClass.getDeclaredConstructor( CompilationOpContext.class, VectorizationContext.class, OperatorDesc.class) .newInstance(cContext, vContext, conf); http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java index 42c7d36..9049ddd 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java @@ -201,4 +201,5 @@ public class SelectOperator extends Operator<SelectDesc> implements Serializable return true; } + } http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/MapJoinKey.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/MapJoinKey.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/MapJoinKey.java index cbe83be..9f27f56 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/MapJoinKey.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/MapJoinKey.java @@ -93,7 +93,9 @@ public abstract class MapJoinKey { return true; } - public static boolean isSupportedField(TypeInfo typeInfo) { + public static boolean isSupportedField(String typeName) { + TypeInfo typeInfo = TypeInfoUtils.getTypeInfoFromTypeString(typeName); + if (typeInfo.getCategory() != Category.PRIMITIVE) return false; // not supported PrimitiveTypeInfo primitiveTypeInfo = (PrimitiveTypeInfo) typeInfo; PrimitiveCategory pc = primitiveTypeInfo.getPrimitiveCategory(); @@ -101,11 +103,6 @@ public abstract class MapJoinKey { return true; } - public static boolean isSupportedField(String typeName) { - TypeInfo typeInfo = TypeInfoUtils.getTypeInfoFromTypeString(typeName); - return isSupportedField(typeInfo); - } - public static MapJoinKey readFromVector(Output output, MapJoinKey key, Object[] keyObject, List<ObjectInspector> keyOIs, boolean mayReuseKey) throws HiveException { http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HashTableLoader.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HashTableLoader.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HashTableLoader.java index 3cf6561..1634f42 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HashTableLoader.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HashTableLoader.java @@ -75,7 +75,7 @@ public class HashTableLoader implements org.apache.hadoop.hive.ql.exec.HashTable this.desc = joinOp.getConf(); if (desc.getVectorMode() && HiveConf.getBoolVar( hconf, HiveConf.ConfVars.HIVE_VECTORIZATION_MAPJOIN_NATIVE_FAST_HASHTABLE_ENABLED)) { - VectorMapJoinDesc vectorDesc = (VectorMapJoinDesc) desc.getVectorDesc(); + VectorMapJoinDesc vectorDesc = desc.getVectorDesc(); useFastContainer = vectorDesc != null && vectorDesc.hashTableImplementationType() == VectorMapJoinDesc.HashTableImplementationType.FAST; } http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnMapping.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnMapping.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnMapping.java index c890674..c4b95c3 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnMapping.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnMapping.java @@ -20,8 +20,6 @@ package org.apache.hadoop.hive.ql.exec.vector; import java.util.Arrays; -import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; - /** * This class collects column information for copying a row from one VectorizedRowBatch to * same/another batch. @@ -32,7 +30,7 @@ public abstract class VectorColumnMapping { protected int[] sourceColumns; protected int[] outputColumns; - protected TypeInfo[] typeInfos; + protected String[] typeNames; protected VectorColumnOrderedMap vectorColumnMapping; @@ -40,7 +38,7 @@ public abstract class VectorColumnMapping { this.vectorColumnMapping = new VectorColumnOrderedMap(name); } - public abstract void add(int sourceColumn, int outputColumn, TypeInfo typeInfo); + public abstract void add(int sourceColumn, int outputColumn, String typeName); public abstract void finalize(); @@ -56,8 +54,8 @@ public abstract class VectorColumnMapping { return outputColumns; } - public TypeInfo[] getTypeInfos() { - return typeInfos; + public String[] getTypeNames() { + return typeNames; } @Override @@ -67,7 +65,7 @@ public abstract class VectorColumnMapping { sb.append(", "); sb.append("output columns: " + Arrays.toString(outputColumns)); sb.append(", "); - sb.append("type infos: " + Arrays.toString(typeInfos)); + sb.append("type names: " + Arrays.toString(typeNames)); return sb.toString(); } } http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOrderedMap.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOrderedMap.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOrderedMap.java index 97d55f5..0e6014b 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOrderedMap.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOrderedMap.java @@ -23,10 +23,8 @@ import java.util.Map; import java.util.TreeMap; import org.apache.commons.lang.ArrayUtils; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; /** * This class collects column information for mapping vector columns, including the hive type name. @@ -45,17 +43,17 @@ public class VectorColumnOrderedMap { private class Value { int valueColumn; - TypeInfo typeInfo; + String typeName; - Value(int valueColumn, TypeInfo typeInfo) { + Value(int valueColumn, String typeName) { this.valueColumn = valueColumn; - this.typeInfo = typeInfo; + this.typeName = typeName; } public String toString() { StringBuilder sb = new StringBuilder(); sb.append("(value column: " + valueColumn); - sb.append(", type info: " + typeInfo.toString() + ")"); + sb.append(", type name: " + typeName + ")"); return sb.toString(); } } @@ -64,12 +62,12 @@ public class VectorColumnOrderedMap { private final int[] orderedColumns; private final int[] valueColumns; - private final TypeInfo[] typeInfos; + private final String[] typeNames; - Mapping(int[] orderedColumns, int[] valueColumns, TypeInfo[] typeInfos) { + Mapping(int[] orderedColumns, int[] valueColumns, String[] typeNames) { this.orderedColumns = orderedColumns; this.valueColumns = valueColumns; - this.typeInfos = typeInfos; + this.typeNames = typeNames; } public int getCount() { @@ -84,8 +82,8 @@ public class VectorColumnOrderedMap { return valueColumns; } - public TypeInfo[] getTypeInfos() { - return typeInfos; + public String[] getTypeNames() { + return typeNames; } } @@ -94,14 +92,14 @@ public class VectorColumnOrderedMap { orderedTreeMap = new TreeMap<Integer, Value>(); } - public void add(int orderedColumn, int valueColumn, TypeInfo typeInfo) { + public void add(int orderedColumn, int valueColumn, String typeName) { if (orderedTreeMap.containsKey(orderedColumn)) { throw new RuntimeException( name + " duplicate column " + orderedColumn + " in ordered column map " + orderedTreeMap.toString() + - " when adding value column " + valueColumn + ", type into " + typeInfo.toString()); + " when adding value column " + valueColumn + ", type " + typeName); } - orderedTreeMap.put(orderedColumn, new Value(valueColumn, typeInfo)); + orderedTreeMap.put(orderedColumn, new Value(valueColumn, typeName)); } public boolean orderedColumnsContain(int orderedColumn) { @@ -111,16 +109,17 @@ public class VectorColumnOrderedMap { public Mapping getMapping() { ArrayList<Integer> orderedColumns = new ArrayList<Integer>(); ArrayList<Integer> valueColumns = new ArrayList<Integer>(); - ArrayList<TypeInfo> typeInfos = new ArrayList<TypeInfo>(); + ArrayList<String> typeNames = new ArrayList<String>(); for (Map.Entry<Integer, Value> entry : orderedTreeMap.entrySet()) { orderedColumns.add(entry.getKey()); Value value = entry.getValue(); valueColumns.add(value.valueColumn); - typeInfos.add(value.typeInfo); + typeNames.add(value.typeName); } return new Mapping( ArrayUtils.toPrimitive(orderedColumns.toArray(new Integer[0])), ArrayUtils.toPrimitive(valueColumns.toArray(new Integer[0])), - typeInfos.toArray(new TypeInfo[0])); + typeNames.toArray(new String[0])); + } } http://git-wip-us.apache.org/repos/asf/hive/blob/aed21d0b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOutputMapping.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOutputMapping.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOutputMapping.java index 4ceff6b..f35aff7 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOutputMapping.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnOutputMapping.java @@ -19,7 +19,6 @@ package org.apache.hadoop.hive.ql.exec.vector; import org.apache.hadoop.hive.ql.exec.vector.VectorColumnOrderedMap.Mapping; -import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; /** * This class collects column information for copying a row from one VectorizedRowBatch to @@ -36,9 +35,9 @@ public class VectorColumnOutputMapping extends VectorColumnMapping { } @Override - public void add(int sourceColumn, int outputColumn, TypeInfo typeInfo) { + public void add(int sourceColumn, int outputColumn, String typeName) { // Order on outputColumn. - vectorColumnMapping.add(outputColumn, sourceColumn, typeInfo); + vectorColumnMapping.add(outputColumn, sourceColumn, typeName); } public boolean containsOutputColumn(int outputColumn) { @@ -52,7 +51,7 @@ public class VectorColumnOutputMapping extends VectorColumnMapping { // Ordered columns are the output columns. sourceColumns = mapping.getValueColumns(); outputColumns = mapping.getOrderedColumns(); - typeInfos = mapping.getTypeInfos(); + typeNames = mapping.getTypeNames(); // Not needed anymore. vectorColumnMapping = null;