Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 011D6200BB2 for ; Sat, 15 Oct 2016 00:16:25 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id F3CC4160ADD; Fri, 14 Oct 2016 22:16:24 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id B1AA4160B01 for ; Sat, 15 Oct 2016 00:16:22 +0200 (CEST) Received: (qmail 27587 invoked by uid 500); 14 Oct 2016 22:16:15 -0000 Mailing-List: contact commits-help@hive.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hive-dev@hive.apache.org Delivered-To: mailing list commits@hive.apache.org Received: (qmail 25819 invoked by uid 99); 14 Oct 2016 22:16:13 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 14 Oct 2016 22:16:13 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id D2F55E07D9; Fri, 14 Oct 2016 22:16:13 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: mmccline@apache.org To: commits@hive.apache.org Date: Fri, 14 Oct 2016 22:17:02 -0000 Message-Id: <19a9acac769a4e85a6cabb04257bfe0f@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [51/51] [partial] hive git commit: Revert "Revert "HIVE-11394: Enhance EXPLAIN display for vectorization (Matt McCline, reviewed by Gopal Vijayaraghavan)"" archived-at: Fri, 14 Oct 2016 22:16:25 -0000 Revert "Revert "HIVE-11394: Enhance EXPLAIN display for vectorization (Matt McCline, reviewed by Gopal Vijayaraghavan)"" This reverts commit aed21d0b7c83058f77d796f63d699b5bd0d77de1. Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/16d28b34 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/16d28b34 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/16d28b34 Branch: refs/heads/master Commit: 16d28b343b76c998b8fdbd8a91bae07ac82357de Parents: 8f886f2 Author: Matt McCline Authored: Fri Oct 14 15:12:02 2016 -0700 Committer: Matt McCline Committed: Fri Oct 14 15:12:02 2016 -0700 ---------------------------------------------------------------------- .../org/apache/hive/common/util/DateUtils.java | 20 + .../ColumnArithmeticColumn.txt | 7 +- .../ColumnArithmeticColumnDecimal.txt | 5 + .../ColumnArithmeticColumnWithConvert.txt | 173 - .../ColumnArithmeticScalar.txt | 5 + .../ColumnArithmeticScalarDecimal.txt | 5 + .../ColumnArithmeticScalarWithConvert.txt | 150 - .../ExpressionTemplates/ColumnCompareColumn.txt | 5 + .../ExpressionTemplates/ColumnCompareScalar.txt | 5 + .../ExpressionTemplates/ColumnDivideColumn.txt | 5 + .../ColumnDivideColumnDecimal.txt | 5 + .../ExpressionTemplates/ColumnDivideScalar.txt | 5 + .../ColumnDivideScalarDecimal.txt | 5 + .../ExpressionTemplates/ColumnUnaryFunc.txt | 5 + .../ExpressionTemplates/ColumnUnaryMinus.txt | 5 + ...eColumnArithmeticIntervalYearMonthColumn.txt | 5 + ...eColumnArithmeticIntervalYearMonthScalar.txt | 5 + .../DateColumnArithmeticTimestampColumn.txt | 5 + .../DateColumnArithmeticTimestampScalar.txt | 5 + ...eScalarArithmeticIntervalYearMonthColumn.txt | 5 + .../DateScalarArithmeticTimestampColumn.txt | 5 + .../DecimalColumnUnaryFunc.txt | 5 + .../ExpressionTemplates/FilterColumnBetween.txt | 7 +- .../FilterColumnCompareColumn.txt | 9 +- .../FilterColumnCompareScalar.txt | 9 +- .../FilterDecimalColumnBetween.txt | 5 + .../FilterDecimalColumnCompareDecimalColumn.txt | 5 + .../FilterDecimalColumnCompareDecimalScalar.txt | 5 + .../FilterDecimalScalarCompareDecimalColumn.txt | 5 + ...erLongDoubleColumnCompareTimestampColumn.txt | 5 + ...erLongDoubleScalarCompareTimestampColumn.txt | 5 + .../FilterScalarCompareColumn.txt | 9 +- .../FilterStringColumnBetween.txt | 9 +- ...tringGroupColumnCompareStringGroupColumn.txt | 5 + ...gGroupColumnCompareStringGroupScalarBase.txt | 7 + ...gGroupScalarCompareStringGroupColumnBase.txt | 8 + .../FilterTimestampColumnBetween.txt | 5 + ...erTimestampColumnCompareLongDoubleColumn.txt | 5 + ...erTimestampColumnCompareLongDoubleScalar.txt | 5 + ...terTimestampColumnCompareTimestampColumn.txt | 5 + ...terTimestampColumnCompareTimestampScalar.txt | 5 + ...erTimestampScalarCompareLongDoubleColumn.txt | 5 + ...terTimestampScalarCompareTimestampColumn.txt | 5 + .../FilterTruncStringColumnBetween.txt | 10 +- .../ExpressionTemplates/IfExprColumnScalar.txt | 5 + .../ExpressionTemplates/IfExprScalarColumn.txt | 5 + .../ExpressionTemplates/IfExprScalarScalar.txt | 5 + ...ervalYearMonthColumnArithmeticDateColumn.txt | 5 + ...ervalYearMonthColumnArithmeticDateScalar.txt | 5 + ...YearMonthColumnArithmeticTimestampColumn.txt | 5 + ...YearMonthColumnArithmeticTimestampScalar.txt | 5 + ...ervalYearMonthScalarArithmeticDateColumn.txt | 5 + ...YearMonthScalarArithmeticTimestampColumn.txt | 5 + .../LongDoubleColumnCompareTimestampColumn.txt | 5 + .../LongDoubleColumnCompareTimestampScalar.txt | 4 + .../LongDoubleScalarCompareTimestampColumn.txt | 5 + .../ScalarArithmeticColumn.txt | 5 + .../ScalarArithmeticColumnDecimal.txt | 5 + .../ScalarArithmeticColumnWithConvert.txt | 163 - .../ExpressionTemplates/ScalarCompareColumn.txt | 5 + .../ExpressionTemplates/ScalarDivideColumn.txt | 5 + .../ScalarDivideColumnDecimal.txt | 5 + ...tringGroupColumnCompareStringGroupColumn.txt | 5 + ...gGroupColumnCompareStringGroupScalarBase.txt | 6 + ...tringGroupColumnCompareTruncStringScalar.txt | 7 + ...gGroupScalarCompareStringGroupColumnBase.txt | 7 + .../TimestampColumnArithmeticDateColumn.txt | 5 + .../TimestampColumnArithmeticDateScalar.txt | 5 + ...pColumnArithmeticIntervalYearMonthColumn.txt | 5 + ...pColumnArithmeticIntervalYearMonthScalar.txt | 5 + ...TimestampColumnArithmeticTimestampColumn.txt | 5 + ...TimestampColumnArithmeticTimestampScalar.txt | 5 + .../TimestampColumnCompareLongDoubleColumn.txt | 5 + .../TimestampColumnCompareLongDoubleScalar.txt | 5 + .../TimestampColumnCompareTimestampColumn.txt | 5 + .../TimestampColumnCompareTimestampScalar.txt | 5 + .../TimestampScalarArithmeticDateColumn.txt | 5 + ...pScalarArithmeticIntervalYearMonthColumn.txt | 5 + ...TimestampScalarArithmeticTimestampColumn.txt | 5 + .../TimestampScalarCompareTimestampColumn.txt | 5 + ...runcStringScalarCompareStringGroupColumn.txt | 2 + .../UDAFTemplates/VectorUDAFAvg.txt | 6 + .../UDAFTemplates/VectorUDAFMinMax.txt | 6 + .../UDAFTemplates/VectorUDAFMinMaxDecimal.txt | 6 + .../VectorUDAFMinMaxIntervalDayTime.txt | 6 + .../UDAFTemplates/VectorUDAFMinMaxString.txt | 6 + .../UDAFTemplates/VectorUDAFMinMaxTimestamp.txt | 6 + .../UDAFTemplates/VectorUDAFSum.txt | 6 + .../UDAFTemplates/VectorUDAFVar.txt | 6 + .../UDAFTemplates/VectorUDAFVarDecimal.txt | 6 + .../apache/hadoop/hive/ql/exec/ExplainTask.java | 252 +- .../hadoop/hive/ql/exec/MapJoinOperator.java | 2 +- .../hadoop/hive/ql/exec/OperatorFactory.java | 5 + .../hadoop/hive/ql/exec/SelectOperator.java | 1 - .../hive/ql/exec/persistence/MapJoinKey.java | 9 +- .../hive/ql/exec/spark/HashTableLoader.java | 2 +- .../ql/exec/vector/VectorColumnMapping.java | 12 +- .../ql/exec/vector/VectorColumnOrderedMap.java | 33 +- .../exec/vector/VectorColumnOutputMapping.java | 7 +- .../exec/vector/VectorColumnSourceMapping.java | 7 +- .../hive/ql/exec/vector/VectorCopyRow.java | 3 +- .../ql/exec/vector/VectorFilterOperator.java | 4 +- .../ql/exec/vector/VectorGroupByOperator.java | 21 +- .../ql/exec/vector/VectorSelectOperator.java | 33 +- .../ql/exec/vector/VectorizationContext.java | 38 +- .../exec/vector/VectorizationContextRegion.java | 4 +- .../ql/exec/vector/VectorizedRowBatchCtx.java | 3 + ...AbstractFilterStringColLikeStringScalar.java | 5 + .../CastBooleanToCharViaLongToChar.java | 5 + .../CastBooleanToVarCharViaLongToVarChar.java | 5 + .../exec/vector/expressions/CastDateToChar.java | 4 + .../vector/expressions/CastDateToVarChar.java | 5 + .../vector/expressions/CastDecimalToChar.java | 5 + .../expressions/CastDecimalToDecimal.java | 5 + .../expressions/CastDecimalToVarChar.java | 5 + .../expressions/CastDoubleToTimestamp.java | 5 + .../exec/vector/expressions/CastLongToChar.java | 5 + .../exec/vector/expressions/CastLongToDate.java | 5 + .../vector/expressions/CastLongToTimestamp.java | 5 + .../vector/expressions/CastLongToVarChar.java | 5 + .../CastMillisecondsLongToTimestamp.java | 5 + .../expressions/CastStringGroupToChar.java | 4 + .../expressions/CastStringGroupToVarChar.java | 5 + .../vector/expressions/CastStringToDate.java | 5 + .../vector/expressions/CastStringToDecimal.java | 5 + .../CastStringToIntervalDayTime.java | 5 + .../CastStringToIntervalYearMonth.java | 5 + .../expressions/CastTimestampToBoolean.java | 7 +- .../expressions/CastTimestampToDouble.java | 5 + .../vector/expressions/CastTimestampToLong.java | 7 +- .../ql/exec/vector/expressions/ColAndCol.java | 5 + .../ql/exec/vector/expressions/ColOrCol.java | 5 + .../expressions/ConstantVectorExpression.java | 33 + .../expressions/DateColSubtractDateColumn.java | 4 + .../expressions/DateColSubtractDateScalar.java | 5 + .../DateScalarSubtractDateColumn.java | 5 + .../vector/expressions/DecimalColumnInList.java | 7 + .../expressions/DecimalToStringUnaryUDF.java | 5 + .../vector/expressions/DoubleColumnInList.java | 7 + .../vector/expressions/FilterColAndScalar.java | 5 + .../vector/expressions/FilterColOrScalar.java | 5 + .../expressions/FilterDecimalColumnInList.java | 7 + .../expressions/FilterDoubleColumnInList.java | 6 + .../vector/expressions/FilterExprAndExpr.java | 8 + .../vector/expressions/FilterExprOrExpr.java | 6 + .../expressions/FilterLongColumnInList.java | 7 + .../expressions/FilterScalarAndColumn.java | 5 + .../expressions/FilterScalarOrColumn.java | 5 + .../expressions/FilterStringColumnInList.java | 7 + .../expressions/FilterStructColumnInList.java | 9 + .../FilterTimestampColumnInList.java | 7 + .../vector/expressions/FuncDecimalToDouble.java | 5 + .../vector/expressions/FuncDecimalToLong.java | 5 + .../expressions/FuncDecimalToTimestamp.java | 5 + .../vector/expressions/FuncDoubleToDecimal.java | 4 + .../vector/expressions/FuncLongToDecimal.java | 4 + .../vector/expressions/FuncLongToString.java | 4 + .../FuncRoundWithNumDigitsDecimalToDecimal.java | 4 + .../expressions/FuncTimestampToDecimal.java | 5 + .../vector/expressions/FuncTimestampToLong.java | 5 + .../vector/expressions/IdentityExpression.java | 5 + .../IfExprDoubleColumnDoubleColumn.java | 5 + .../IfExprIntervalDayTimeColumnColumn.java | 5 + .../IfExprIntervalDayTimeColumnScalar.java | 5 + .../IfExprIntervalDayTimeScalarColumn.java | 5 + .../IfExprIntervalDayTimeScalarScalar.java | 5 + .../expressions/IfExprLongColumnLongColumn.java | 5 + ...fExprStringGroupColumnStringGroupColumn.java | 5 + .../IfExprStringGroupColumnStringScalar.java | 7 + .../IfExprStringScalarStringGroupColumn.java | 7 + .../IfExprStringScalarStringScalar.java | 7 + .../IfExprTimestampColumnColumnBase.java | 5 + .../IfExprTimestampColumnScalarBase.java | 6 + .../IfExprTimestampScalarColumnBase.java | 6 + .../IfExprTimestampScalarScalarBase.java | 6 + .../ql/exec/vector/expressions/IsNotNull.java | 5 + .../hive/ql/exec/vector/expressions/IsNull.java | 5 + .../expressions/LongColDivideLongColumn.java | 5 + .../expressions/LongColDivideLongScalar.java | 5 + .../expressions/LongColEqualLongColumn.java | 5 + .../expressions/LongColEqualLongScalar.java | 4 + .../LongColGreaterEqualLongColumn.java | 5 + .../LongColGreaterEqualLongScalar.java | 5 + .../expressions/LongColGreaterLongColumn.java | 5 + .../expressions/LongColGreaterLongScalar.java | 5 + .../expressions/LongColLessEqualLongColumn.java | 5 + .../expressions/LongColLessEqualLongScalar.java | 5 + .../expressions/LongColLessLongColumn.java | 5 + .../expressions/LongColLessLongScalar.java | 5 + .../expressions/LongColNotEqualLongColumn.java | 5 + .../expressions/LongColNotEqualLongScalar.java | 5 + .../vector/expressions/LongColumnInList.java | 6 + .../expressions/LongScalarDivideLongColumn.java | 5 + .../expressions/LongScalarEqualLongColumn.java | 4 + .../LongScalarGreaterEqualLongColumn.java | 5 + .../LongScalarGreaterLongColumn.java | 5 + .../LongScalarLessEqualLongColumn.java | 4 + .../expressions/LongScalarLessLongColumn.java | 5 + .../LongScalarNotEqualLongColumn.java | 5 + .../expressions/LongToStringUnaryUDF.java | 5 + .../expressions/MathFuncDoubleToDouble.java | 7 +- .../expressions/MathFuncLongToDouble.java | 5 + .../vector/expressions/MathFuncLongToLong.java | 7 +- .../hive/ql/exec/vector/expressions/NotCol.java | 5 + .../expressions/PosModDoubleToDouble.java | 5 + .../vector/expressions/PosModLongToLong.java | 5 + .../RoundWithNumDigitsDoubleToDouble.java | 5 + .../vector/expressions/SelectColumnIsFalse.java | 4 + .../expressions/SelectColumnIsNotNull.java | 5 + .../vector/expressions/SelectColumnIsNull.java | 5 + .../vector/expressions/SelectColumnIsTrue.java | 5 + .../SelectStringColLikeStringScalar.java | 10 +- .../vector/expressions/StringColumnInList.java | 5 + .../StringGroupColConcatStringScalar.java | 7 + .../expressions/StringGroupConcatColCol.java | 5 + .../exec/vector/expressions/StringLength.java | 4 + .../StringScalarConcatStringGroupCol.java | 7 + .../expressions/StringSubstrColStart.java | 5 + .../expressions/StringSubstrColStartLen.java | 5 + .../exec/vector/expressions/StringUnaryUDF.java | 5 + .../expressions/StringUnaryUDFDirect.java | 4 + .../vector/expressions/StructColumnInList.java | 8 + .../expressions/TimestampColumnInList.java | 6 + .../expressions/TimestampToStringUnaryUDF.java | 4 + .../exec/vector/expressions/VectorCoalesce.java | 5 + .../ql/exec/vector/expressions/VectorElt.java | 7 + .../vector/expressions/VectorExpression.java | 44 +- .../expressions/VectorUDFDateAddColCol.java | 5 + .../expressions/VectorUDFDateAddColScalar.java | 5 + .../expressions/VectorUDFDateAddScalarCol.java | 5 + .../expressions/VectorUDFDateDiffColCol.java | 5 + .../expressions/VectorUDFDateDiffColScalar.java | 6 + .../expressions/VectorUDFDateDiffScalarCol.java | 5 + .../VectorUDFTimestampFieldDate.java | 10 + .../VectorUDFTimestampFieldString.java | 9 + .../VectorUDFTimestampFieldTimestamp.java | 9 + .../aggregates/VectorAggregateExpression.java | 19 + .../aggregates/VectorUDAFAvgDecimal.java | 6 + .../aggregates/VectorUDAFAvgTimestamp.java | 6 + .../expressions/aggregates/VectorUDAFCount.java | 6 + .../aggregates/VectorUDAFCountMerge.java | 6 + .../aggregates/VectorUDAFCountStar.java | 7 + .../aggregates/VectorUDAFStdPopTimestamp.java | 6 + .../aggregates/VectorUDAFStdSampTimestamp.java | 6 + .../aggregates/VectorUDAFSumDecimal.java | 6 + .../aggregates/VectorUDAFVarPopTimestamp.java | 6 + .../aggregates/VectorUDAFVarSampTimestamp.java | 6 + .../mapjoin/VectorMapJoinCommonOperator.java | 363 +- .../VectorMapJoinInnerBigOnlyLongOperator.java | 11 +- ...ctorMapJoinInnerBigOnlyMultiKeyOperator.java | 15 +- ...VectorMapJoinInnerBigOnlyStringOperator.java | 11 +- .../mapjoin/VectorMapJoinInnerLongOperator.java | 11 +- .../VectorMapJoinInnerMultiKeyOperator.java | 15 +- .../VectorMapJoinInnerStringOperator.java | 11 +- .../VectorMapJoinLeftSemiLongOperator.java | 11 +- .../VectorMapJoinLeftSemiMultiKeyOperator.java | 15 +- .../VectorMapJoinLeftSemiStringOperator.java | 11 +- .../mapjoin/VectorMapJoinOuterLongOperator.java | 11 +- .../VectorMapJoinOuterMultiKeyOperator.java | 15 +- .../VectorMapJoinOuterStringOperator.java | 11 +- .../fast/VectorMapJoinFastTableContainer.java | 2 +- .../VectorMapJoinOptimizedCreateHashTable.java | 2 +- .../VectorReduceSinkCommonOperator.java | 2 +- .../ql/exec/vector/udf/VectorUDFAdaptor.java | 5 + .../hive/ql/optimizer/physical/Vectorizer.java | 1458 ++- .../ql/optimizer/physical/VectorizerReason.java | 123 + .../hive/ql/parse/ExplainConfiguration.java | 39 + .../hive/ql/parse/ExplainSemanticAnalyzer.java | 38 +- .../org/apache/hadoop/hive/ql/parse/HiveLexer.g | 5 + .../apache/hadoop/hive/ql/parse/HiveParser.g | 28 +- .../hadoop/hive/ql/parse/IdentifiersParser.g | 6 + .../hive/ql/plan/AbstractOperatorDesc.java | 12 + .../hadoop/hive/ql/plan/AbstractVectorDesc.java | 14 + .../hadoop/hive/ql/plan/AppMasterEventDesc.java | 24 + .../apache/hadoop/hive/ql/plan/BaseWork.java | 197 +- .../org/apache/hadoop/hive/ql/plan/Explain.java | 29 + .../apache/hadoop/hive/ql/plan/ExplainWork.java | 13 + .../apache/hadoop/hive/ql/plan/FetchWork.java | 45 +- .../hadoop/hive/ql/plan/FileSinkDesc.java | 17 +- .../apache/hadoop/hive/ql/plan/FilterDesc.java | 28 + .../apache/hadoop/hive/ql/plan/GroupByDesc.java | 84 +- .../hadoop/hive/ql/plan/HashTableSinkDesc.java | 1 + .../apache/hadoop/hive/ql/plan/LimitDesc.java | 18 + .../apache/hadoop/hive/ql/plan/MapJoinDesc.java | 218 +- .../org/apache/hadoop/hive/ql/plan/MapWork.java | 99 +- .../hadoop/hive/ql/plan/MapredLocalWork.java | 4 +- .../apache/hadoop/hive/ql/plan/MapredWork.java | 11 +- .../ql/plan/OperatorExplainVectorization.java | 85 + .../hadoop/hive/ql/plan/ReduceSinkDesc.java | 119 +- .../apache/hadoop/hive/ql/plan/ReduceWork.java | 92 +- .../apache/hadoop/hive/ql/plan/SelectDesc.java | 35 + .../hive/ql/plan/SparkHashTableSinkDesc.java | 25 + .../apache/hadoop/hive/ql/plan/SparkWork.java | 6 +- .../hadoop/hive/ql/plan/TableScanDesc.java | 26 + .../org/apache/hadoop/hive/ql/plan/TezWork.java | 11 +- .../hive/ql/plan/VectorAppMasterEventDesc.java | 35 + .../apache/hadoop/hive/ql/plan/VectorDesc.java | 5 + .../hadoop/hive/ql/plan/VectorFileSinkDesc.java | 35 + .../hadoop/hive/ql/plan/VectorFilterDesc.java | 48 + .../hadoop/hive/ql/plan/VectorGroupByDesc.java | 31 + .../hadoop/hive/ql/plan/VectorLimitDesc.java | 35 + .../hadoop/hive/ql/plan/VectorMapJoinDesc.java | 110 + .../hadoop/hive/ql/plan/VectorMapJoinInfo.java | 169 + .../hive/ql/plan/VectorReduceSinkDesc.java | 68 + .../hadoop/hive/ql/plan/VectorSMBJoinDesc.java | 35 + .../hadoop/hive/ql/plan/VectorSelectDesc.java | 56 + .../ql/plan/VectorSparkHashTableSinkDesc.java | 35 + .../hive/ql/plan/VectorTableScanDesc.java | 45 + .../hive/ql/plan/VectorizationCondition.java | 76 + .../exec/vector/TestVectorFilterOperator.java | 15 +- .../exec/vector/TestVectorGroupByOperator.java | 90 +- .../exec/vector/TestVectorSelectOperator.java | 16 + .../ql/optimizer/physical/TestVectorizer.java | 16 +- .../clientpositive/schema_evol_orc_vec_part.q | 20 +- .../schema_evol_orc_vec_part_all_complex.q | 8 +- .../schema_evol_orc_vec_part_all_primitive.q | 12 +- .../clientpositive/schema_evol_orc_vec_table.q | 12 +- .../clientpositive/schema_evol_text_vec_part.q | 20 +- .../schema_evol_text_vec_part_all_complex.q | 8 +- .../schema_evol_text_vec_part_all_primitive.q | 12 +- .../clientpositive/schema_evol_text_vec_table.q | 12 +- .../schema_evol_text_vecrow_part.q | 20 +- .../schema_evol_text_vecrow_part_all_complex.q | 8 +- ...schema_evol_text_vecrow_part_all_primitive.q | 12 +- .../schema_evol_text_vecrow_table.q | 12 +- .../clientpositive/vector_adaptor_usage_mode.q | 24 +- .../queries/clientpositive/vector_aggregate_9.q | 3 +- .../vector_aggregate_without_gby.q | 4 +- .../clientpositive/vector_auto_smb_mapjoin_14.q | 30 +- .../clientpositive/vector_between_columns.q | 4 +- .../queries/clientpositive/vector_between_in.q | 25 +- .../clientpositive/vector_binary_join_groupby.q | 7 +- .../test/queries/clientpositive/vector_bround.q | 4 +- .../test/queries/clientpositive/vector_bucket.q | 3 +- .../clientpositive/vector_cast_constant.q | 4 +- .../test/queries/clientpositive/vector_char_2.q | 6 +- .../test/queries/clientpositive/vector_char_4.q | 3 +- .../queries/clientpositive/vector_char_cast.q | 2 + .../clientpositive/vector_char_mapjoin1.q | 6 +- .../queries/clientpositive/vector_char_simple.q | 8 +- .../queries/clientpositive/vector_coalesce.q | 13 +- .../queries/clientpositive/vector_coalesce_2.q | 8 +- .../queries/clientpositive/vector_complex_all.q | 6 +- .../clientpositive/vector_complex_join.q | 4 +- .../test/queries/clientpositive/vector_count.q | 8 +- .../clientpositive/vector_count_distinct.q | 3 +- .../queries/clientpositive/vector_data_types.q | 5 +- .../test/queries/clientpositive/vector_date_1.q | 3 +- .../queries/clientpositive/vector_decimal_1.q | 2 +- .../clientpositive/vector_decimal_10_0.q | 2 +- .../queries/clientpositive/vector_decimal_2.q | 2 +- .../queries/clientpositive/vector_decimal_3.q | 2 +- .../queries/clientpositive/vector_decimal_4.q | 2 +- .../queries/clientpositive/vector_decimal_5.q | 2 +- .../queries/clientpositive/vector_decimal_6.q | 2 +- .../clientpositive/vector_decimal_aggregate.q | 6 +- .../clientpositive/vector_decimal_cast.q | 3 +- .../clientpositive/vector_decimal_expressions.q | 3 +- .../clientpositive/vector_decimal_mapjoin.q | 3 +- .../clientpositive/vector_decimal_math_funcs.q | 4 +- .../clientpositive/vector_decimal_precision.q | 4 +- .../clientpositive/vector_decimal_round.q | 14 +- .../clientpositive/vector_decimal_round_2.q | 10 +- .../clientpositive/vector_decimal_trailing.q | 2 +- .../clientpositive/vector_decimal_udf2.q | 6 +- .../queries/clientpositive/vector_distinct_2.q | 3 +- ql/src/test/queries/clientpositive/vector_elt.q | 5 +- .../queries/clientpositive/vector_empty_where.q | 8 +- .../queries/clientpositive/vector_groupby4.q | 2 +- .../queries/clientpositive/vector_groupby6.q | 2 +- .../queries/clientpositive/vector_groupby_3.q | 3 +- .../clientpositive/vector_groupby_mapjoin.q | 4 +- .../clientpositive/vector_groupby_reduce.q | 9 +- .../clientpositive/vector_grouping_sets.q | 4 +- .../queries/clientpositive/vector_if_expr.q | 4 +- .../clientpositive/vector_include_no_sel.q | 3 +- .../queries/clientpositive/vector_inner_join.q | 19 +- .../queries/clientpositive/vector_interval_1.q | 19 +- .../queries/clientpositive/vector_interval_2.q | 22 +- .../clientpositive/vector_interval_arithmetic.q | 16 +- .../clientpositive/vector_interval_mapjoin.q | 3 +- .../test/queries/clientpositive/vector_join.q | 1 + .../test/queries/clientpositive/vector_join30.q | 16 +- .../clientpositive/vector_join_part_col_char.q | 3 +- .../clientpositive/vector_left_outer_join.q | 4 +- .../clientpositive/vector_left_outer_join2.q | 12 +- .../clientpositive/vector_leftsemi_mapjoin.q | 361 +- .../clientpositive/vector_mapjoin_reduce.q | 5 +- .../vector_mr_diff_schema_alias.q | 3 +- .../clientpositive/vector_multi_insert.q | 4 +- .../vector_non_constant_in_expr.q | 2 +- .../vector_non_string_partition.q | 5 +- .../clientpositive/vector_null_projection.q | 4 +- .../clientpositive/vector_nullsafe_join.q | 21 +- .../vector_number_compare_projection.q | 4 +- ql/src/test/queries/clientpositive/vector_nvl.q | 9 +- .../queries/clientpositive/vector_orderby_5.q | 3 +- .../queries/clientpositive/vector_outer_join0.q | 5 +- .../queries/clientpositive/vector_outer_join1.q | 7 +- .../queries/clientpositive/vector_outer_join2.q | 3 +- .../queries/clientpositive/vector_outer_join3.q | 7 +- .../queries/clientpositive/vector_outer_join4.q | 7 +- .../queries/clientpositive/vector_outer_join5.q | 21 +- .../queries/clientpositive/vector_outer_join6.q | 5 +- .../vector_partition_diff_num_cols.q | 12 +- .../vector_partitioned_date_time.q | 18 +- .../vector_partitioned_date_time_win.q | 16 +- .../queries/clientpositive/vector_reduce1.q | 3 +- .../queries/clientpositive/vector_reduce2.q | 3 +- .../queries/clientpositive/vector_reduce3.q | 3 +- .../vector_reduce_groupby_decimal.q | 4 +- .../clientpositive/vector_string_concat.q | 5 +- .../clientpositive/vector_string_decimal.q | 2 +- .../queries/clientpositive/vector_struct_in.q | 19 +- .../clientpositive/vector_tablesample_rows.q | 8 +- .../test/queries/clientpositive/vector_udf2.q | 2 +- .../test/queries/clientpositive/vector_udf3.q | 3 +- .../queries/clientpositive/vector_varchar_4.q | 3 +- .../clientpositive/vector_varchar_mapjoin1.q | 6 +- .../clientpositive/vector_varchar_simple.q | 8 +- .../clientpositive/vector_when_case_null.q | 2 +- .../queries/clientpositive/vectorization_0.q | 21 +- .../queries/clientpositive/vectorization_1.q | 1 + .../queries/clientpositive/vectorization_10.q | 1 + .../queries/clientpositive/vectorization_11.q | 1 + .../queries/clientpositive/vectorization_12.q | 1 + .../queries/clientpositive/vectorization_13.q | 6 +- .../queries/clientpositive/vectorization_14.q | 3 +- .../queries/clientpositive/vectorization_15.q | 3 +- .../queries/clientpositive/vectorization_16.q | 3 +- .../queries/clientpositive/vectorization_17.q | 3 +- .../queries/clientpositive/vectorization_2.q | 1 + .../queries/clientpositive/vectorization_3.q | 1 + .../queries/clientpositive/vectorization_4.q | 1 + .../queries/clientpositive/vectorization_5.q | 1 + .../queries/clientpositive/vectorization_6.q | 1 + .../queries/clientpositive/vectorization_7.q | 6 +- .../queries/clientpositive/vectorization_8.q | 6 +- .../queries/clientpositive/vectorization_9.q | 3 +- .../clientpositive/vectorization_decimal_date.q | 4 +- .../queries/clientpositive/vectorization_div0.q | 7 +- .../clientpositive/vectorization_limit.q | 16 +- .../clientpositive/vectorization_nested_udf.q | 2 + .../queries/clientpositive/vectorization_not.q | 2 + .../clientpositive/vectorization_offset_limit.q | 5 +- .../queries/clientpositive/vectorization_part.q | 2 + .../clientpositive/vectorization_part_project.q | 4 +- .../clientpositive/vectorization_part_varchar.q | 2 + .../clientpositive/vectorization_pushdown.q | 4 +- .../vectorization_short_regress.q | 54 +- .../clientpositive/vectorized_bucketmapjoin1.q | 8 +- .../queries/clientpositive/vectorized_case.q | 4 +- .../queries/clientpositive/vectorized_casts.q | 2 +- .../queries/clientpositive/vectorized_context.q | 4 +- .../clientpositive/vectorized_date_funcs.q | 11 +- .../clientpositive/vectorized_distinct_gby.q | 5 +- .../vectorized_dynamic_partition_pruning.q | 79 +- .../queries/clientpositive/vectorized_mapjoin.q | 3 +- .../clientpositive/vectorized_mapjoin2.q | 2 +- .../clientpositive/vectorized_math_funcs.q | 3 +- .../clientpositive/vectorized_nested_mapjoin.q | 3 +- .../queries/clientpositive/vectorized_parquet.q | 4 +- .../clientpositive/vectorized_parquet_types.q | 6 +- .../queries/clientpositive/vectorized_ptf.q | 47 +- .../clientpositive/vectorized_shufflejoin.q | 3 +- .../clientpositive/vectorized_string_funcs.q | 3 +- .../clientpositive/vectorized_timestamp.q | 8 +- .../clientpositive/vectorized_timestamp_funcs.q | 15 +- .../vectorized_timestamp_ints_casts.q | 5 +- .../llap/schema_evol_orc_vec_part.q.out | 666 +- .../schema_evol_orc_vec_part_all_complex.q.out | 168 +- ...schema_evol_orc_vec_part_all_primitive.q.out | 370 +- .../llap/schema_evol_orc_vec_table.q.out | 365 +- .../llap/schema_evol_text_vec_part.q.out | 666 +- .../schema_evol_text_vec_part_all_complex.q.out | 168 +- ...chema_evol_text_vec_part_all_primitive.q.out | 370 +- .../llap/schema_evol_text_vec_table.q.out | 365 +- .../llap/schema_evol_text_vecrow_part.q.out | 666 +- ...hema_evol_text_vecrow_part_all_complex.q.out | 168 +- ...ma_evol_text_vecrow_part_all_primitive.q.out | 370 +- .../llap/schema_evol_text_vecrow_table.q.out | 365 +- .../llap/vector_aggregate_9.q.out | 35 +- .../llap/vector_aggregate_without_gby.q.out | 4 +- .../llap/vector_auto_smb_mapjoin_14.q.out | 1973 ++- .../llap/vector_between_columns.q.out | 115 +- .../clientpositive/llap/vector_between_in.q.out | 600 +- .../llap/vector_binary_join_groupby.q.out | 152 +- .../clientpositive/llap/vector_bround.q.out | 15 +- .../clientpositive/llap/vector_bucket.q.out | 27 +- .../llap/vector_cast_constant.q.out | 53 +- .../clientpositive/llap/vector_char_2.q.out | 144 +- .../clientpositive/llap/vector_char_4.q.out | 27 +- .../llap/vector_char_mapjoin1.q.out | 220 +- .../llap/vector_char_simple.q.out | 209 +- .../clientpositive/llap/vector_coalesce.q.out | 473 +- .../clientpositive/llap/vector_coalesce_2.q.out | 100 +- .../llap/vector_complex_all.q.out | 106 +- .../llap/vector_complex_join.q.out | 40 +- .../clientpositive/llap/vector_count.q.out | 146 +- .../llap/vector_count_distinct.q.out | 73 +- .../clientpositive/llap/vector_data_types.q.out | 53 +- .../llap/vector_decimal_aggregate.q.out | 95 +- .../llap/vector_decimal_cast.q.out | 77 +- .../llap/vector_decimal_expressions.q.out | 50 +- .../llap/vector_decimal_mapjoin.q.out | 59 +- .../llap/vector_decimal_math_funcs.q.out | 69 +- .../llap/vector_decimal_precision.q.out | 35 +- .../llap/vector_decimal_round.q.out | 189 +- .../llap/vector_decimal_round_2.q.out | 173 +- .../llap/vector_decimal_udf2.q.out | 62 +- .../clientpositive/llap/vector_distinct_2.q.out | 53 +- .../clientpositive/llap/vector_elt.q.out | 145 +- .../clientpositive/llap/vector_groupby4.q.out | 62 +- .../clientpositive/llap/vector_groupby6.q.out | 62 +- .../clientpositive/llap/vector_groupby_3.q.out | 55 +- .../llap/vector_groupby_mapjoin.q.out | 238 +- .../llap/vector_groupby_reduce.q.out | 286 +- .../llap/vector_grouping_sets.q.out | 53 +- .../clientpositive/llap/vector_if_expr.q.out | 47 +- .../llap/vector_include_no_sel.q.out | 75 +- .../clientpositive/llap/vector_inner_join.q.out | 686 +- .../clientpositive/llap/vector_interval_1.q.out | 347 +- .../clientpositive/llap/vector_interval_2.q.out | 448 +- .../llap/vector_interval_arithmetic.q.out | 334 +- .../llap/vector_interval_mapjoin.q.out | 63 +- .../clientpositive/llap/vector_join30.q.out | 907 +- .../llap/vector_join_part_col_char.q.out | 4 +- .../llap/vector_left_outer_join.q.out | 39 +- .../llap/vector_left_outer_join2.q.out | 230 +- .../llap/vector_leftsemi_mapjoin.q.out | 11428 ++++++++++++----- .../llap/vector_mapjoin_reduce.q.out | 88 +- .../llap/vector_mr_diff_schema_alias.q.out | 44 +- .../llap/vector_multi_insert.q.out | 16 +- .../llap/vector_null_projection.q.out | 39 +- .../llap/vector_nullsafe_join.q.out | 628 +- .../llap/vector_number_compare_projection.q.out | 68 +- .../clientpositive/llap/vector_nvl.q.out | 265 +- .../clientpositive/llap/vector_orderby_5.q.out | 67 +- .../llap/vector_outer_join0.q.out | 132 +- .../llap/vector_outer_join1.q.out | 252 +- .../llap/vector_outer_join2.q.out | 123 +- .../llap/vector_outer_join3.q.out | 327 +- .../llap/vector_outer_join4.q.out | 242 +- .../llap/vector_outer_join5.q.out | 914 +- .../llap/vector_outer_join6.q.out | 199 +- .../llap/vector_partition_diff_num_cols.q.out | 250 +- .../llap/vector_partitioned_date_time.q.out | 1053 +- .../clientpositive/llap/vector_reduce1.q.out | 42 +- .../clientpositive/llap/vector_reduce2.q.out | 42 +- .../clientpositive/llap/vector_reduce3.q.out | 42 +- .../llap/vector_reduce_groupby_decimal.q.out | 71 +- .../llap/vector_string_concat.q.out | 138 +- .../clientpositive/llap/vector_struct_in.q.out | 568 +- .../clientpositive/llap/vector_varchar_4.q.out | 27 +- .../llap/vector_varchar_mapjoin1.q.out | 93 +- .../llap/vector_varchar_simple.q.out | 99 +- .../llap/vector_when_case_null.q.out | 52 +- .../clientpositive/llap/vectorization_0.q.out | 519 +- .../clientpositive/llap/vectorization_13.q.out | 114 +- .../clientpositive/llap/vectorization_14.q.out | 28 +- .../clientpositive/llap/vectorization_15.q.out | 28 +- .../clientpositive/llap/vectorization_16.q.out | 21 +- .../clientpositive/llap/vectorization_17.q.out | 23 +- .../clientpositive/llap/vectorization_7.q.out | 100 +- .../clientpositive/llap/vectorization_8.q.out | 100 +- .../clientpositive/llap/vectorization_9.q.out | 21 +- .../llap/vectorization_decimal_date.q.out | 76 +- .../llap/vectorization_part_project.q.out | 23 +- .../llap/vectorization_pushdown.q.out | 21 +- .../llap/vectorization_short_regress.q.out | 1002 +- .../llap/vectorized_bucketmapjoin1.q.out | 108 +- .../clientpositive/llap/vectorized_case.q.out | 62 +- .../clientpositive/llap/vectorized_casts.q.out | 16 +- .../llap/vectorized_context.q.out | 32 +- .../llap/vectorized_date_funcs.q.out | 314 +- .../llap/vectorized_distinct_gby.q.out | 51 +- .../vectorized_dynamic_partition_pruning.q.out | 1159 +- .../llap/vectorized_mapjoin.q.out | 71 +- .../llap/vectorized_math_funcs.q.out | 69 +- .../llap/vectorized_nested_mapjoin.q.out | 39 +- .../llap/vectorized_parquet.q.out | 25 +- .../llap/vectorized_parquet_types.q.out | 12 +- .../clientpositive/llap/vectorized_ptf.q.out | 668 +- .../llap/vectorized_shufflejoin.q.out | 73 +- .../llap/vectorized_string_funcs.q.out | 54 +- .../llap/vectorized_timestamp.q.out | 16 +- .../llap/vectorized_timestamp_funcs.q.out | 292 +- .../llap/vectorized_timestamp_ints_casts.q.out | 138 +- .../spark/vector_between_in.q.out | 604 +- .../spark/vector_cast_constant.q.out | 53 +- .../clientpositive/spark/vector_char_4.q.out | 27 +- .../spark/vector_count_distinct.q.out | 74 +- .../spark/vector_data_types.q.out | 53 +- .../spark/vector_decimal_aggregate.q.out | 96 +- .../spark/vector_decimal_mapjoin.q.out | 58 +- .../spark/vector_distinct_2.q.out | 54 +- .../clientpositive/spark/vector_elt.q.out | 143 +- .../clientpositive/spark/vector_groupby_3.q.out | 56 +- .../spark/vector_inner_join.q.out | 678 +- .../spark/vector_left_outer_join.q.out | 39 +- .../spark/vector_mapjoin_reduce.q.out | 72 +- .../clientpositive/spark/vector_orderby_5.q.out | 68 +- .../spark/vector_outer_join0.q.out | 130 +- .../spark/vector_outer_join1.q.out | 248 +- .../spark/vector_outer_join2.q.out | 121 +- .../spark/vector_outer_join3.q.out | 342 +- .../spark/vector_outer_join4.q.out | 254 +- .../spark/vector_outer_join5.q.out | 968 +- .../spark/vector_string_concat.q.out | 137 +- .../clientpositive/spark/vector_varchar_4.q.out | 27 +- .../clientpositive/spark/vectorization_0.q.out | 519 +- .../clientpositive/spark/vectorization_13.q.out | 114 +- .../clientpositive/spark/vectorization_14.q.out | 28 +- .../clientpositive/spark/vectorization_15.q.out | 28 +- .../clientpositive/spark/vectorization_16.q.out | 21 +- .../clientpositive/spark/vectorization_17.q.out | 23 +- .../clientpositive/spark/vectorization_7.q.out | 118 +- .../clientpositive/spark/vectorization_8.q.out | 146 +- .../clientpositive/spark/vectorization_9.q.out | 21 +- .../spark/vectorization_decimal_date.q.out | 75 +- .../spark/vectorization_div0.q.out | 167 +- .../spark/vectorization_part_project.q.out | 23 +- .../spark/vectorization_pushdown.q.out | 21 +- .../spark/vectorization_short_regress.q.out | 1002 +- .../spark/vectorized_bucketmapjoin1.q.out | 135 +- .../clientpositive/spark/vectorized_case.q.out | 62 +- .../spark/vectorized_mapjoin.q.out | 70 +- .../spark/vectorized_math_funcs.q.out | 68 +- .../spark/vectorized_nested_mapjoin.q.out | 39 +- .../clientpositive/spark/vectorized_ptf.q.out | 693 +- .../spark/vectorized_shufflejoin.q.out | 80 +- .../spark/vectorized_string_funcs.q.out | 53 +- .../spark/vectorized_timestamp_funcs.q.out | 292 +- .../tez/vector_join_part_col_char.q.out | 4 +- .../tez/vector_non_string_partition.q.out | 98 +- .../clientpositive/tez/vectorization_div0.q.out | 167 +- .../tez/vectorization_limit.q.out | 339 +- .../vector_adaptor_usage_mode.q.out | 230 +- .../clientpositive/vector_aggregate_9.q.out | 34 +- .../vector_aggregate_without_gby.q.out | 20 +- .../vector_auto_smb_mapjoin_14.q.out | 604 +- .../clientpositive/vector_between_columns.q.out | 75 +- .../clientpositive/vector_between_in.q.out | 466 +- .../vector_binary_join_groupby.q.out | 96 +- .../results/clientpositive/vector_bround.q.out | 16 +- .../results/clientpositive/vector_bucket.q.out | 16 +- .../clientpositive/vector_cast_constant.q.out | 43 +- .../results/clientpositive/vector_char_2.q.out | 96 +- .../results/clientpositive/vector_char_4.q.out | 27 +- .../clientpositive/vector_char_mapjoin1.q.out | 123 +- .../clientpositive/vector_char_simple.q.out | 180 +- .../clientpositive/vector_coalesce.q.out | 394 +- .../clientpositive/vector_coalesce_2.q.out | 83 +- .../clientpositive/vector_complex_all.q.out | 84 +- .../clientpositive/vector_complex_join.q.out | 28 +- .../results/clientpositive/vector_count.q.out | 142 +- .../clientpositive/vector_count_distinct.q.out | 39 +- .../clientpositive/vector_data_types.q.out | 40 +- .../vector_decimal_aggregate.q.out | 74 +- .../clientpositive/vector_decimal_cast.q.out | 34 +- .../vector_decimal_expressions.q.out | 37 +- .../clientpositive/vector_decimal_mapjoin.q.out | 36 +- .../vector_decimal_math_funcs.q.out | 31 +- .../vector_decimal_precision.q.out | 34 +- .../clientpositive/vector_decimal_round.q.out | 129 +- .../clientpositive/vector_decimal_round_2.q.out | 132 +- .../clientpositive/vector_decimal_udf2.q.out | 62 +- .../clientpositive/vector_distinct_2.q.out | 38 +- .../results/clientpositive/vector_elt.q.out | 101 +- .../clientpositive/vector_empty_where.q.out | 168 +- .../clientpositive/vector_groupby4.q.out | 41 +- .../clientpositive/vector_groupby6.q.out | 41 +- .../clientpositive/vector_groupby_3.q.out | 39 +- .../clientpositive/vector_groupby_mapjoin.q.out | 24 +- .../clientpositive/vector_groupby_reduce.q.out | 178 +- .../clientpositive/vector_grouping_sets.q.out | 36 +- .../results/clientpositive/vector_if_expr.q.out | 37 +- .../clientpositive/vector_include_no_sel.q.out | 47 +- .../clientpositive/vector_inner_join.q.out | 396 +- .../clientpositive/vector_interval_1.q.out | 264 +- .../clientpositive/vector_interval_2.q.out | 348 +- .../vector_interval_arithmetic.q.out | 260 +- .../vector_interval_mapjoin.q.out | 40 +- .../results/clientpositive/vector_join30.q.out | 700 +- .../vector_join_part_col_char.q.out | 15 +- .../clientpositive/vector_left_outer_join.q.out | 20 +- .../vector_left_outer_join2.q.out | 156 +- .../vector_leftsemi_mapjoin.q.out | 7103 +++++----- .../clientpositive/vector_mapjoin_reduce.q.out | 56 +- .../vector_mr_diff_schema_alias.q.out | 38 +- .../clientpositive/vector_multi_insert.q.out | 16 +- .../vector_non_constant_in_expr.q.out | 14 +- .../vector_non_string_partition.q.out | 72 +- .../clientpositive/vector_null_projection.q.out | 29 +- .../clientpositive/vector_nullsafe_join.q.out | 326 +- .../vector_number_compare_projection.q.out | 66 +- .../results/clientpositive/vector_nvl.q.out | 181 +- .../clientpositive/vector_orderby_5.q.out | 47 +- .../clientpositive/vector_outer_join0.q.out | 74 +- .../clientpositive/vector_outer_join1.q.out | 126 +- .../clientpositive/vector_outer_join2.q.out | 53 +- .../clientpositive/vector_outer_join3.q.out | 309 +- .../clientpositive/vector_outer_join4.q.out | 235 +- .../clientpositive/vector_outer_join5.q.out | 882 +- .../clientpositive/vector_outer_join6.q.out | 190 +- .../vector_partition_diff_num_cols.q.out | 190 +- .../vector_partitioned_date_time.q.out | 348 +- .../results/clientpositive/vector_reduce1.q.out | 32 +- .../results/clientpositive/vector_reduce2.q.out | 32 +- .../results/clientpositive/vector_reduce3.q.out | 32 +- .../vector_reduce_groupby_decimal.q.out | 47 +- .../clientpositive/vector_string_concat.q.out | 77 +- .../clientpositive/vector_string_decimal.q.out | 14 +- .../clientpositive/vector_struct_in.q.out | 228 +- .../vector_tablesample_rows.q.out | 88 +- .../results/clientpositive/vector_udf2.q.out | 30 +- .../results/clientpositive/vector_udf3.q.out | 27 +- .../clientpositive/vector_varchar_4.q.out | 27 +- .../vector_varchar_mapjoin1.q.out | 60 +- .../clientpositive/vector_varchar_simple.q.out | 75 +- .../clientpositive/vector_when_case_null.q.out | 40 +- .../clientpositive/vectorization_0.q.out | 398 +- .../clientpositive/vectorization_13.q.out | 94 +- .../clientpositive/vectorization_14.q.out | 28 +- .../clientpositive/vectorization_15.q.out | 28 +- .../clientpositive/vectorization_16.q.out | 20 +- .../clientpositive/vectorization_17.q.out | 20 +- .../clientpositive/vectorization_7.q.out | 74 +- .../clientpositive/vectorization_8.q.out | 74 +- .../clientpositive/vectorization_9.q.out | 20 +- .../vectorization_decimal_date.q.out | 33 +- .../clientpositive/vectorization_div0.q.out | 104 +- .../clientpositive/vectorization_limit.q.out | 224 +- .../vectorization_offset_limit.q.out | 52 +- .../vectorization_part_project.q.out | 20 +- .../clientpositive/vectorization_pushdown.q.out | 20 +- .../vectorization_short_regress.q.out | 800 +- .../vectorized_bucketmapjoin1.q.out | 99 +- .../clientpositive/vectorized_case.q.out | 62 +- .../clientpositive/vectorized_casts.q.out | 16 +- .../clientpositive/vectorized_context.q.out | 16 +- .../clientpositive/vectorized_date_funcs.q.out | 157 +- .../vectorized_distinct_gby.q.out | 40 +- .../clientpositive/vectorized_mapjoin.q.out | 48 +- .../clientpositive/vectorized_mapjoin2.q.out | 47 +- .../clientpositive/vectorized_math_funcs.q.out | 31 +- .../vectorized_nested_mapjoin.q.out | 20 +- .../clientpositive/vectorized_parquet.q.out | 28 +- .../vectorized_parquet_types.q.out | 48 +- .../results/clientpositive/vectorized_ptf.q.out | 728 +- .../clientpositive/vectorized_shufflejoin.q.out | 31 +- .../vectorized_string_funcs.q.out | 16 +- .../clientpositive/vectorized_timestamp.q.out | 80 +- .../vectorized_timestamp_funcs.q.out | 222 +- .../vectorized_timestamp_ints_casts.q.out | 62 +- 755 files changed, 56870 insertions(+), 18068 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/common/src/java/org/apache/hive/common/util/DateUtils.java ---------------------------------------------------------------------- diff --git a/common/src/java/org/apache/hive/common/util/DateUtils.java b/common/src/java/org/apache/hive/common/util/DateUtils.java index 959a542..a1068ec 100644 --- a/common/src/java/org/apache/hive/common/util/DateUtils.java +++ b/common/src/java/org/apache/hive/common/util/DateUtils.java @@ -54,4 +54,24 @@ public class DateUtils { } return result; } + + // From java.util.Calendar + private static final String[] FIELD_NAME = { + "ERA", "YEAR", "MONTH", "WEEK_OF_YEAR", "WEEK_OF_MONTH", "DAY_OF_MONTH", + "DAY_OF_YEAR", "DAY_OF_WEEK", "DAY_OF_WEEK_IN_MONTH", "AM_PM", "HOUR", + "HOUR_OF_DAY", "MINUTE", "SECOND", "MILLISECOND", "ZONE_OFFSET", + "DST_OFFSET" + }; + + /** + * Returns the name of the specified calendar field. + * + * @param field the calendar field + * @return the calendar field name + * @exception IndexOutOfBoundsException if field is negative, + * equal to or greater then FIELD_COUNT. + */ + public static String getFieldName(int field) { + return FIELD_NAME[field]; + } } http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumn.txt index e52fcc0..d8164a4 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumn.txt @@ -157,7 +157,12 @@ public class extends VectorExpression { public void setOutputColumn(int outputColumn) { this.outputColumn = outputColumn; } - + + @Override + public String vectorExpressionParameters() { + return "col " + colNum1 + ", col " + + colNum2; + } + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnDecimal.txt index e1df589..31a015f 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnDecimal.txt @@ -167,6 +167,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnWithConvert.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnWithConvert.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnWithConvert.txt deleted file mode 100644 index bcd10a2..0000000 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticColumnWithConvert.txt +++ /dev/null @@ -1,173 +0,0 @@ -/** - * 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.expressions.NullUtil; -import org.apache.hadoop.hive.ql.exec.vector.*; -import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; -import org.apache.hadoop.hive.ql.exec.vector.VectorExpressionDescriptor; - -/** - * Generated from template ColumnArithmeticColumnWithConvert.txt, which covers binary arithmetic - * expressions between columns. - */ -public class extends VectorExpression { - - private static final long serialVersionUID = 1L; - - private int colNum1; - private int colNum2; - private int outputColumn; - - public (int colNum1, int colNum2, int outputColumn) { - this.colNum1 = colNum1; - this.colNum2 = colNum2; - this.outputColumn = outputColumn; - } - - public () { - } - - @Override - public void evaluate(VectorizedRowBatch batch) { - - if (childExpressions != null) { - super.evaluateChildren(batch); - } - - inputColVector1 = () batch.cols[colNum1]; - inputColVector2 = () batch.cols[colNum2]; - outputColVector = () batch.cols[outputColumn]; - int[] sel = batch.selected; - int n = batch.size; - [] vector1 = inputColVector1.vector; - [] vector2 = inputColVector2.vector; - [] outputVector = outputColVector.vector; - - // return immediately if batch is empty - if (n == 0) { - return; - } - - outputColVector.isRepeating = - inputColVector1.isRepeating && inputColVector2.isRepeating - || inputColVector1.isRepeating && !inputColVector1.noNulls && inputColVector1.isNull[0] - || inputColVector2.isRepeating && !inputColVector2.noNulls && inputColVector2.isNull[0]; - - // Handle nulls first - NullUtil.propagateNullsColCol( - inputColVector1, inputColVector2, outputColVector, sel, n, batch.selectedInUse); - - /* Disregard nulls for processing. In other words, - * the arithmetic operation is performed even if one or - * more inputs are null. This is to improve speed by avoiding - * conditional checks in the inner loop. - */ - if (inputColVector1.isRepeating && inputColVector2.isRepeating) { - outputVector[0] = (vector1[0]) (vector2[0]); - } else if (inputColVector1.isRepeating) { - if (batch.selectedInUse) { - for(int j = 0; j != n; j++) { - int i = sel[j]; - outputVector[i] = (vector1[0]) (vector2[i]); - } - } else { - for(int i = 0; i != n; i++) { - outputVector[i] = (vector1[0]) (vector2[i]); - } - } - } else if (inputColVector2.isRepeating) { - if (batch.selectedInUse) { - for(int j = 0; j != n; j++) { - int i = sel[j]; - outputVector[i] = (vector1[i]) (vector2[0]); - } - } else { - for(int i = 0; i != n; i++) { - outputVector[i] = (vector1[i]) (vector2[0]); - } - } - } else { - if (batch.selectedInUse) { - for(int j = 0; j != n; j++) { - int i = sel[j]; - outputVector[i] = (vector1[i]) (vector2[i]); - } - } else { - for(int i = 0; i != n; i++) { - outputVector[i] = (vector1[i]) (vector2[i]); - } - } - } - - /* For the case when the output can have null values, follow - * the convention that the data values must be 1 for long and - * NaN for double. This is to prevent possible later zero-divide errors - * in complex arithmetic expressions like col2 / (col1 - 1) - * in the case when some col1 entries are null. - */ - NullUtil.setNullDataEntries(outputColVector, batch.selectedInUse, sel, n); - } - - @Override - public int getOutputColumn() { - return outputColumn; - } - - @Override - public String getOutputType() { - return ""; - } - - public int getColNum1() { - return colNum1; - } - - public void setColNum1(int colNum1) { - this.colNum1 = colNum1; - } - - public int getColNum2() { - return colNum2; - } - - public void setColNum2(int colNum2) { - this.colNum2 = colNum2; - } - - 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(""), - VectorExpressionDescriptor.ArgumentType.getType("")) - .setInputExpressionTypes( - VectorExpressionDescriptor.InputExpressionType.COLUMN, - VectorExpressionDescriptor.InputExpressionType.COLUMN).build(); - } -} - http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalar.txt index 87335f1..2cc1aa2 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalar.txt @@ -134,6 +134,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarDecimal.txt index 0bb1532..294bb4f 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarDecimal.txt @@ -132,6 +132,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarWithConvert.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarWithConvert.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarWithConvert.txt deleted file mode 100644 index 105eb92..0000000 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnArithmeticScalarWithConvert.txt +++ /dev/null @@ -1,150 +0,0 @@ -/** - * 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.; -import org.apache.hadoop.hive.ql.exec.vector.; -import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; -import org.apache.hadoop.hive.ql.exec.vector.expressions.NullUtil; -import org.apache.hadoop.hive.ql.exec.vector.VectorExpressionDescriptor; -import org.apache.hadoop.hive.ql.exec.vector.*; - -/** - * Generated from template ColumnArithmeticScalarWithConvert.txt, which covers binary arithmetic - * expressions between a column and a scalar. - */ -public class extends VectorExpression { - - private static final long serialVersionUID = 1L; - - private int colNum; - private value; - private int outputColumn; - - public (int colNum, value, int outputColumn) { - this.colNum = colNum; - this.value = (value); - this.outputColumn = outputColumn; - } - - public () { - } - - @Override - public void evaluate(VectorizedRowBatch batch) { - - if (childExpressions != null) { - super.evaluateChildren(batch); - } - - inputColVector = () batch.cols[colNum]; - outputColVector = () 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; - [] vector = inputColVector.vector; - [] outputVector = outputColVector.vector; - - // return immediately if batch is empty - if (n == 0) { - return; - } - - if (inputColVector.isRepeating) { - outputVector[0] = (vector[0]) value; - - // 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] = (vector[i]) value; - } - } else { - for(int i = 0; i != n; i++) { - outputVector[i] = (vector[i]) value; - } - } - } else /* there are nulls */ { - if (batch.selectedInUse) { - for(int j = 0; j != n; j++) { - int i = sel[j]; - outputVector[i] = (vector[i]) value; - outputIsNull[i] = inputIsNull[i]; - } - } else { - for(int i = 0; i != n; i++) { - outputVector[i] = (vector[i]) value; - } - 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 ""; - } - - public int getColNum() { - return colNum; - } - - public void setColNum(int colNum) { - this.colNum = colNum; - } - - public getValue() { - return value; - } - - public void setValue( 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(""), - VectorExpressionDescriptor.ArgumentType.getType("")) - .setInputExpressionTypes( - VectorExpressionDescriptor.InputExpressionType.COLUMN, - VectorExpressionDescriptor.InputExpressionType.SCALAR).build(); - } -} http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareColumn.txt index f2b4c81..cbc97da 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareColumn.txt @@ -157,6 +157,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareScalar.txt index 2438ee4..6568d1c 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnCompareScalar.txt @@ -149,6 +149,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt index b0f6eb1..04b533a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt @@ -184,6 +184,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumnDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumnDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumnDecimal.txt index 623bcfb..68c4f58 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumnDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumnDecimal.txt @@ -139,6 +139,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalar.txt index c6614ab..25e0d85 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalar.txt @@ -139,6 +139,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalarDecimal.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalarDecimal.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalarDecimal.txt index 841ef93..0728f6c 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalarDecimal.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideScalarDecimal.txt @@ -138,6 +138,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryFunc.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryFunc.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryFunc.txt index cf690db..efbf1ba 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryFunc.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryFunc.txt @@ -122,6 +122,11 @@ public class extends VectorExpression { } @Override + public String vectorExpressionParameters() { + return "col " + colNum; + } + + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryMinus.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryMinus.txt b/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryMinus.txt index b52b7c7..6574267 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryMinus.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/ColumnUnaryMinus.txt @@ -124,6 +124,11 @@ public class extends VectorExpression { } @Override + public String vectorExpressionParameters() { + return "col " + colNum; + } + + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthColumn.txt index c3d8d7e..2a9f947 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthColumn.txt @@ -181,6 +181,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthScalar.txt index d1474fb..4bbc358 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticIntervalYearMonthScalar.txt @@ -141,6 +141,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampColumn.txt index 63cebaf..2e66b3a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampColumn.txt @@ -170,6 +170,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampScalar.txt index 7aee529..e679449 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateColumnArithmeticTimestampScalar.txt @@ -139,6 +139,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticIntervalYearMonthColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticIntervalYearMonthColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticIntervalYearMonthColumn.txt index c68ac34..e23dc27 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticIntervalYearMonthColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticIntervalYearMonthColumn.txt @@ -155,6 +155,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticTimestampColumn.txt index cb6b750..85d88fd 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DateScalarArithmeticTimestampColumn.txt @@ -146,6 +146,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/DecimalColumnUnaryFunc.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/DecimalColumnUnaryFunc.txt b/ql/src/gen/vectorization/ExpressionTemplates/DecimalColumnUnaryFunc.txt index 619015e..0b7fefc 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/DecimalColumnUnaryFunc.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/DecimalColumnUnaryFunc.txt @@ -119,6 +119,11 @@ public class extends VectorExpression { } @Override + public String vectorExpressionParameters() { + return "col " + colNum; + } + + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) .setMode( http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnBetween.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnBetween.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnBetween.txt index e9aaaf2..0a9c444 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnBetween.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnBetween.txt @@ -173,7 +173,12 @@ public class extends VectorExpression { public void setRightValue( value) { this.leftValue = value; } - + + @Override + public String vectorExpressionParameters() { + return "col " + colNum + ", left " + leftValue + ", right " + rightValue; + } + @Override public VectorExpressionDescriptor.Descriptor getDescriptor() { return (new VectorExpressionDescriptor.Builder()) http://git-wip-us.apache.org/repos/asf/hive/blob/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareColumn.txt index e25b9c2..ee80606 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareColumn.txt @@ -33,8 +33,8 @@ public class extends VectorExpression { private static final long serialVersionUID = 1L; - private int colNum1; - private int colNum2; + protected int colNum1; + protected int colNum2; public (int colNum1, int colNum2) { this.colNum1 = colNum1; @@ -182,6 +182,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareScalar.txt index b0f6e5c..248a66a 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterColumnCompareScalar.txt @@ -32,8 +32,8 @@ public class extends VectorExpression { private static final long serialVersionUID = 1L; - private int colNum; - private value; + protected int colNum; + protected value; public (int colNum, value) { this.colNum = colNum; @@ -158,6 +158,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnBetween.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnBetween.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnBetween.txt index d68edfa..4cef036 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnBetween.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnBetween.txt @@ -155,6 +155,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalColumn.txt index a2352c6..ee450d3 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalColumn.txt @@ -430,6 +430,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalScalar.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalScalar.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalScalar.txt index bdd39b9..9943f45 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalScalar.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalColumnCompareDecimalScalar.txt @@ -145,6 +145,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalScalarCompareDecimalColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalScalarCompareDecimalColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalScalarCompareDecimalColumn.txt index 0608016..4477aff 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalScalarCompareDecimalColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterDecimalScalarCompareDecimalColumn.txt @@ -145,6 +145,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleColumnCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleColumnCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleColumnCompareTimestampColumn.txt index 57caf7e..610c062 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleColumnCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleColumnCompareTimestampColumn.txt @@ -170,6 +170,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleScalarCompareTimestampColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleScalarCompareTimestampColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleScalarCompareTimestampColumn.txt index f5f59c2..73c46a1 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleScalarCompareTimestampColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterLongDoubleScalarCompareTimestampColumn.txt @@ -154,6 +154,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterScalarCompareColumn.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterScalarCompareColumn.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterScalarCompareColumn.txt index b7544c7..037382c 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterScalarCompareColumn.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterScalarCompareColumn.txt @@ -32,8 +32,8 @@ public class extends VectorExpression { private static final long serialVersionUID = 1L; - private int colNum; - private value; + protected int colNum; + protected value; public ( value, int colNum) { this.colNum = colNum; @@ -158,6 +158,11 @@ public class 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/16d28b34/ql/src/gen/vectorization/ExpressionTemplates/FilterStringColumnBetween.txt ---------------------------------------------------------------------- diff --git a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringColumnBetween.txt b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringColumnBetween.txt index e8049da..6cbfca1 100644 --- a/ql/src/gen/vectorization/ExpressionTemplates/FilterStringColumnBetween.txt +++ b/ql/src/gen/vectorization/ExpressionTemplates/FilterStringColumnBetween.txt @@ -18,6 +18,8 @@ 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; @@ -176,7 +178,12 @@ public class 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())