HIVE-19074: Vectorization: Add llap vectorization_div0.q.out Q output file (Matt McCline, reviewed by Teddy Choi)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/3660ac24 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/3660ac24 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/3660ac24 Branch: refs/heads/master Commit: 3660ac24b1a1b24e32d34a98dd4f78f23e751e6f Parents: 54dbd7f Author: Matt McCline <mmccl...@hortonworks.com> Authored: Mon Apr 2 14:10:59 2018 -0500 Committer: Matt McCline <mmccl...@hortonworks.com> Committed: Mon Apr 2 14:10:59 2018 -0500 ---------------------------------------------------------------------- .../test/resources/testconfiguration.properties | 6 +- .../queries/clientpositive/vectorization_div0.q | 34 +- .../spark/vectorization_div0.q.out | 570 +++++++++-------- .../clientpositive/tez/vectorization_div0.q.out | 607 ++++++++++--------- 4 files changed, 651 insertions(+), 566 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/3660ac24/itests/src/test/resources/testconfiguration.properties ---------------------------------------------------------------------- diff --git a/itests/src/test/resources/testconfiguration.properties b/itests/src/test/resources/testconfiguration.properties index ff8adf7..ec25713 100644 --- a/itests/src/test/resources/testconfiguration.properties +++ b/itests/src/test/resources/testconfiguration.properties @@ -45,8 +45,7 @@ minitez.query.files.shared=delete_orig_table.q,\ orc_vectorization_ppd.q,\ update_orig_table.q,\ vector_join_part_col_char.q,\ - vector_non_string_partition.q,\ - vectorization_div0.q + vector_non_string_partition.q # NOTE: Add tests to minitez only if it is very # specific to tez and cannot be added to minillap. @@ -60,8 +59,7 @@ minitez.query.files=acid_vectorization_original_tez.q,\ hybridgrace_hashjoin_2.q,\ multi_count_distinct.q,\ tez-tag.q,\ - tez_union_with_udf.q,\ - vectorization_div0.q + tez_union_with_udf.q minillap.shared.query.files=insert_into1.q,\ http://git-wip-us.apache.org/repos/asf/hive/blob/3660ac24/ql/src/test/queries/clientpositive/vectorization_div0.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/vectorization_div0.q b/ql/src/test/queries/clientpositive/vectorization_div0.q index 26ff266..1e86f01 100644 --- a/ql/src/test/queries/clientpositive/vectorization_div0.q +++ b/ql/src/test/queries/clientpositive/vectorization_div0.q @@ -1,5 +1,6 @@ set hive.mapred.mode=nonstrict; set hive.explain.user=false; +set hive.cli.print.header=true; SET hive.vectorized.execution.enabled = true; set hive.fetch.task.conversion=none; @@ -7,31 +8,36 @@ set hive.fetch.task.conversion=none; -- TODO: add more stuff here after HIVE-5918 is fixed, such as cbigint and constants explain vectorization expression -select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100; -select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100; +select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100; + +select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100; -- There are no zeros in the table, but there is 988888, so use it as zero -- TODO: add more stuff here after HIVE-5918 is fixed, such as cbigint and constants as numerators explain vectorization expression -select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100; -select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100; +select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100; + +select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100; -- There are no zeros in the table, but there is -200.0, so use it as zero explain vectorization expression -select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100; -select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100; +select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100; + +select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100; -- There are no zeros in the table, but there is 1018195815 in cbigint, 528534767 in cint, so using it to do a divide by zero. ctinyint has a zero so can be used directly explain vectorization expression -select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100; +select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100; -select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100; +select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100; http://git-wip-us.apache.org/repos/asf/hive/blob/3660ac24/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out b/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out index e679a75..504dfa7 100644 --- a/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out +++ b/ql/src/test/results/clientpositive/spark/vectorization_div0.q.out @@ -1,9 +1,12 @@ PREHOOK: query: explain vectorization expression -select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100 +select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100 PREHOOK: type: QUERY POSTHOOK: query: explain vectorization expression -select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100 +select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100 POSTHOOK: type: QUERY +Explain PLAN VECTORIZATION: enabled: true enabledConditionsMet: [hive.vectorized.execution.enabled IS true] @@ -15,6 +18,8 @@ STAGE DEPENDENCIES: STAGE PLANS: Stage: Stage-1 Spark + Edges: + Reducer 2 <- Map 1 (SORT, 1) #### A masked pattern was here #### Vertices: Map 1 @@ -25,30 +30,24 @@ STAGE PLANS: TableScan Vectorization: native: true Select Operator - expressions: (UDFToDouble(cint) / 0.0D) (type: double), (UDFToDouble(ctinyint) / 0.0D) (type: double), (UDFToDouble(cbigint) / 0.0D) (type: double), (cdouble / 0.0D) (type: double) - outputColumnNames: _col0, _col1, _col2, _col3 + expressions: cint (type: int), (UDFToDouble(cint) / 0.0D) (type: double), ctinyint (type: tinyint), (UDFToDouble(ctinyint) / 0.0D) (type: double), cbigint (type: bigint), (UDFToDouble(cbigint) / 0.0D) (type: double), cdouble (type: double), (cdouble / 0.0D) (type: double) + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 Select Vectorization: className: VectorSelectOperator native: true - projectedOutputColumnNums: [14, 15, 16, 13] + projectedOutputColumnNums: [2, 14, 0, 15, 3, 16, 5, 13] selectExpressions: DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 2:int) -> 13:double) -> 14:double, DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 0:tinyint) -> 13:double) -> 15:double, DoubleColDivideDoubleScalar(col 13:double, val 0.0)(children: CastLongToDouble(col 3:bigint) -> 13:double) -> 16:double, DoubleColDivideDoubleScalar(col 5:double, val 0.0) -> 13:double Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE - Limit - Number of rows: 100 - Limit Vectorization: - className: VectorLimitOperator + Reduce Output Operator + key expressions: _col0 (type: int), _col2 (type: tinyint), _col4 (type: bigint), _col6 (type: double) + sort order: ++++ + Reduce Sink Vectorization: + className: VectorReduceSinkObjectHashOperator native: true - Statistics: Num rows: 100 Data size: 21500 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - File Sink Vectorization: - className: VectorFileSinkOperator - native: false - Statistics: Num rows: 100 Data size: 21500 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine spark IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true + Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE + TopN Hash Memory Usage: 0.1 + value expressions: _col1 (type: double), _col3 (type: double), _col5 (type: double), _col7 (type: double) Execution mode: vectorized Map Vectorization: enabled: true @@ -56,9 +55,42 @@ STAGE PLANS: inputFormatFeatureSupport: [] featureSupportInUse: [] inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat + allNative: true + usesVectorUDFAdaptor: false + vectorized: true + Reducer 2 + Execution mode: vectorized + Reduce Vectorization: + enabled: true + enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine spark IN [tez, spark] IS true allNative: false usesVectorUDFAdaptor: false vectorized: true + Reduce Operator Tree: + Select Operator + expressions: KEY.reducesinkkey0 (type: int), VALUE._col0 (type: double), KEY.reducesinkkey1 (type: tinyint), VALUE._col1 (type: double), KEY.reducesinkkey2 (type: bigint), VALUE._col2 (type: double), KEY.reducesinkkey3 (type: double), VALUE._col3 (type: double) + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 + Select Vectorization: + className: VectorSelectOperator + native: true + projectedOutputColumnNums: [0, 4, 1, 5, 2, 6, 3, 7] + Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE + Limit + Number of rows: 100 + Limit Vectorization: + className: VectorLimitOperator + native: true + Statistics: Num rows: 100 Data size: 21500 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + File Sink Vectorization: + className: VectorFileSinkOperator + native: false + Statistics: Num rows: 100 Data size: 21500 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator @@ -66,122 +98,126 @@ STAGE PLANS: Processor Tree: ListSink -PREHOOK: query: select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100 +PREHOOK: query: select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100 PREHOOK: type: QUERY PREHOOK: Input: default@alltypesorc #### A masked pattern was here #### -POSTHOOK: query: select cint / 0, ctinyint / 0, cbigint / 0, cdouble / 0.0 from alltypesorc limit 100 +POSTHOOK: query: select cint, cint / 0 as cint_div, ctinyint, ctinyint / 0 as ctinyint_div, cbigint, cbigint / 0 as cbigint_div, cdouble, cdouble / 0.0 as cdouble_div +from alltypesorc order by cint, ctinyint, cbigint, cdouble limit 100 POSTHOOK: type: QUERY POSTHOOK: Input: default@alltypesorc #### A masked pattern was here #### -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL -NULL NULL NULL NULL +cint cint_div ctinyint ctinyint_div cbigint cbigint_div cdouble cdouble_div +NULL NULL -60 NULL -1016256928 NULL 15601.0 NULL +NULL NULL -60 NULL -1062217466 NULL -200.0 NULL +NULL NULL -60 NULL -1183915345 NULL -7196.0 NULL +NULL NULL -60 NULL -126921733 NULL -200.0 NULL +NULL NULL -60 NULL -1445021496 NULL -200.0 NULL +NULL NULL -60 NULL -1690528981 NULL -200.0 NULL +NULL NULL -60 NULL -1743144280 NULL 15601.0 NULL +NULL NULL -60 NULL -1802243330 NULL -7196.0 NULL +NULL NULL -60 NULL -1860186661 NULL -200.0 NULL +NULL NULL -60 NULL -2041965187 NULL 15601.0 NULL +NULL NULL -60 NULL -483910982 NULL -200.0 NULL +NULL NULL -60 NULL -508015343 NULL -200.0 NULL +NULL NULL -60 NULL -519753851 NULL 15601.0 NULL +NULL NULL -60 NULL -5953872 NULL 15601.0 NULL +NULL NULL -60 NULL -68838726 NULL -7196.0 NULL +NULL NULL -60 NULL -903925845 NULL 15601.0 NULL +NULL NULL -60 NULL 1122241452 NULL 15601.0 NULL +NULL NULL -60 NULL 1172431520 NULL -200.0 NULL +NULL NULL -60 NULL 927847540 NULL -200.0 NULL +NULL NULL -60 NULL NULL NULL -200.0 NULL +NULL NULL -61 NULL -1022679553 NULL 15601.0 NULL +NULL NULL -61 NULL -1062521098 NULL -7196.0 NULL +NULL NULL -61 NULL -1313743110 NULL -200.0 NULL +NULL NULL -61 NULL -1513172815 NULL -7196.0 NULL +NULL NULL -61 NULL -1728754595 NULL -7196.0 NULL +NULL NULL -61 NULL -1769786673 NULL -200.0 NULL +NULL NULL -61 NULL -2114172148 NULL -7196.0 NULL +NULL NULL -61 NULL -2175533 NULL -7196.0 NULL +NULL NULL -61 NULL -836697023 NULL -200.0 NULL +NULL NULL -61 NULL -854893578 NULL 15601.0 NULL +NULL NULL -61 NULL -982179838 NULL 15601.0 NULL +NULL NULL -61 NULL 1114673625 NULL 15601.0 NULL +NULL NULL -61 NULL 1139675920 NULL 15601.0 NULL +NULL NULL -61 NULL 1237548317 NULL -7196.0 NULL +NULL NULL -61 NULL 127734700 NULL -7196.0 NULL +NULL NULL -61 NULL 1399483216 NULL -200.0 NULL +NULL NULL -61 NULL 1415466231 NULL -7196.0 NULL +NULL NULL -61 NULL 184425274 NULL -200.0 NULL +NULL NULL -61 NULL 1977536065 NULL 15601.0 NULL +NULL NULL -61 NULL 484546535 NULL 15601.0 NULL +NULL NULL -61 NULL 623787602 NULL -200.0 NULL +NULL NULL -61 NULL 919939154 NULL 15601.0 NULL +NULL NULL -61 NULL 943547371 NULL -7196.0 NULL +NULL NULL -61 NULL NULL NULL -7196.0 NULL +NULL NULL -61 NULL NULL NULL -7196.0 NULL +NULL NULL -62 NULL -1113073921 NULL -200.0 NULL +NULL NULL -62 NULL -1367753794 NULL -7196.0 NULL +NULL NULL -62 NULL -1592016120 NULL 15601.0 NULL +NULL NULL -62 NULL -167812632 NULL -200.0 NULL +NULL NULL -62 NULL -1726415169 NULL 15601.0 NULL +NULL NULL -62 NULL -1761785534 NULL -7196.0 NULL +NULL NULL -62 NULL -2080605724 NULL -200.0 NULL +NULL NULL -62 NULL -642836823 NULL -7196.0 NULL +NULL NULL -62 NULL -840223244 NULL -7196.0 NULL +NULL NULL -62 NULL 1221804187 NULL -200.0 NULL +NULL NULL -62 NULL 1380844570 NULL -7196.0 NULL +NULL NULL -62 NULL 1443417260 NULL -200.0 NULL +NULL NULL -62 NULL 1607712873 NULL -200.0 NULL +NULL NULL -62 NULL 1670449519 NULL -7196.0 NULL +NULL NULL -62 NULL 2071666427 NULL -200.0 NULL +NULL NULL -62 NULL 281485844 NULL 15601.0 NULL +NULL NULL -62 NULL 325025905 NULL -200.0 NULL +NULL NULL -62 NULL 667693308 NULL 15601.0 NULL +NULL NULL -62 NULL 68899019 NULL 15601.0 NULL +NULL NULL -62 NULL 726070601 NULL -200.0 NULL +NULL NULL -62 NULL 73960976 NULL 15601.0 NULL +NULL NULL -62 NULL 756424745 NULL -7196.0 NULL +NULL NULL -62 NULL 986221936 NULL -7196.0 NULL +NULL NULL -62 NULL NULL NULL -7196.0 NULL +NULL NULL -62 NULL NULL NULL -7196.0 NULL +NULL NULL -63 NULL -1167054574 NULL 15601.0 NULL +NULL NULL -63 NULL -1224023895 NULL -7196.0 NULL +NULL NULL -63 NULL -1574729892 NULL 15601.0 NULL +NULL NULL -63 NULL -1711796768 NULL -7196.0 NULL +NULL NULL -63 NULL -1996001975 NULL 15601.0 NULL +NULL NULL -63 NULL -1999307539 NULL -200.0 NULL +NULL NULL -63 NULL -200542601 NULL 15601.0 NULL +NULL NULL -63 NULL -2070832461 NULL -200.0 NULL +NULL NULL -63 NULL -721244708 NULL 15601.0 NULL +NULL NULL -63 NULL -994504916 NULL -7196.0 NULL +NULL NULL -63 NULL -997946077 NULL -200.0 NULL +NULL NULL -63 NULL 1089367203 NULL -200.0 NULL +NULL NULL -63 NULL 1927856372 NULL -200.0 NULL +NULL NULL -63 NULL 2059199534 NULL 15601.0 NULL +NULL NULL -63 NULL 483904240 NULL 15601.0 NULL +NULL NULL -63 NULL 507317726 NULL -200.0 NULL +NULL NULL -63 NULL 956380949 NULL -200.0 NULL +NULL NULL -64 NULL -1615920595 NULL -7196.0 NULL +NULL NULL -64 NULL -1639157869 NULL -7196.0 NULL +NULL NULL -64 NULL -1809291815 NULL 15601.0 NULL +NULL NULL -64 NULL -1809444706 NULL -200.0 NULL +NULL NULL -64 NULL -527203677 NULL -7196.0 NULL +NULL NULL -64 NULL 1090418478 NULL -7196.0 NULL +NULL NULL -64 NULL 1421812187 NULL 15601.0 NULL +NULL NULL -64 NULL 1805860756 NULL -7196.0 NULL +NULL NULL -64 NULL 1960950366 NULL 15601.0 NULL +NULL NULL -64 NULL 2118653994 NULL -200.0 NULL +NULL NULL -64 NULL 406535485 NULL -7196.0 NULL +NULL NULL -64 NULL 658026952 NULL -7196.0 NULL +NULL NULL -64 NULL 927647669 NULL -200.0 NULL PREHOOK: query: explain vectorization expression -select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100 +select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100 PREHOOK: type: QUERY POSTHOOK: query: explain vectorization expression -select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100 +select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100 POSTHOOK: type: QUERY +Explain PLAN VECTORIZATION: enabled: true enabledConditionsMet: [hive.vectorized.execution.enabled IS true] @@ -221,15 +257,14 @@ STAGE PLANS: selectExpressions: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 13:bigint, DoubleColDivideDoubleColumn(col 5:double, col 15:double)(children: CastLongToDouble(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 14:bigint) -> 15:double) -> 16:double, DecimalScalarDivideDecimalColumn(val 1.2, col 17:decimal(19,0))(children: CastLongToDecimal(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 988888) -> 14:bigint) -> 17:decimal(19,0)) -> 18:decimal(22,21) Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: _col0 (type: bigint), _col1 (type: double) - sort order: ++ + key expressions: _col0 (type: bigint), _col1 (type: double), _col2 (type: decimal(22,21)) + sort order: +++ Reduce Sink Vectorization: className: VectorReduceSinkObjectHashOperator native: true nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine spark IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE TopN Hash Memory Usage: 0.1 - value expressions: _col2 (type: decimal(22,21)) Execution mode: vectorized Map Vectorization: enabled: true @@ -250,7 +285,7 @@ STAGE PLANS: vectorized: true Reduce Operator Tree: Select Operator - expressions: KEY.reducesinkkey0 (type: bigint), KEY.reducesinkkey1 (type: double), VALUE._col0 (type: decimal(22,21)) + expressions: KEY.reducesinkkey0 (type: bigint), KEY.reducesinkkey1 (type: double), KEY.reducesinkkey2 (type: decimal(22,21)) outputColumnNames: _col0, _col1, _col2 Select Vectorization: className: VectorSelectOperator @@ -280,16 +315,17 @@ STAGE PLANS: Processor Tree: ListSink -PREHOOK: query: select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100 +PREHOOK: query: select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100 PREHOOK: type: QUERY PREHOOK: Input: default@alltypesorc #### A masked pattern was here #### -POSTHOOK: query: select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) -from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2 limit 100 +POSTHOOK: query: select (cbigint - 988888L) as s1, cdouble / (cbigint - 988888L) as s2, 1.2 / (cbigint - 988888L) as s3 +from alltypesorc where cbigint > 0 and cbigint < 100000000 order by s1, s2, s3 limit 100 POSTHOOK: type: QUERY POSTHOOK: Input: default@alltypesorc #### A masked pattern was here #### +s1 s2 s3 -63925 0.11256941728588189 -0.000018771998435666797 -985319 2.0297994862577501E-4 -0.000001217879691754650 -985319 NULL -0.000001217879691754650 @@ -391,13 +427,14 @@ POSTHOOK: Input: default@alltypesorc 9247593 NULL 0.000000129763496295739 9821695 -7.326637611939691E-4 0.000000122178503812224 PREHOOK: query: explain vectorization expression -select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100 +select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100 PREHOOK: type: QUERY POSTHOOK: query: explain vectorization expression -select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100 +select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100 POSTHOOK: type: QUERY +Explain PLAN VECTORIZATION: enabled: true enabledConditionsMet: [hive.vectorized.execution.enabled IS true] @@ -428,24 +465,23 @@ STAGE PLANS: predicate: ((cdouble < -199.0D) and (cdouble >= -500.0D)) (type: boolean) Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: (cdouble + 200.0D) (type: double), (UDFToDouble(cbigint) / (cdouble + 200.0D)) (type: double), ((cdouble + 200.0D) / (cdouble + 200.0D)) (type: double), (3.0D / (cdouble + 200.0D)) (type: double), (1.2D / (cdouble + 200.0D)) (type: double) - outputColumnNames: _col0, _col1, _col2, _col4, _col5 + expressions: (cdouble + 200.0D) (type: double), (UDFToDouble(cbigint) / (cdouble + 200.0D)) (type: double), ((cdouble + 200.0D) / (cdouble + 200.0D)) (type: double), (UDFToDouble(cbigint) / (cdouble + 200.0D)) (type: double), (3.0D / (cdouble + 200.0D)) (type: double), (1.2D / (cdouble + 200.0D)) (type: double) + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Select Vectorization: className: VectorSelectOperator native: true - projectedOutputColumnNums: [13, 16, 17, 15, 18] - selectExpressions: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 13:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 17:double, DoubleScalarDivideDoubleColumn(val 3.0, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 15:double, DoubleScalarDivideDoubleColumn(val 1.2, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 18:double + projectedOutputColumnNums: [13, 16, 17, 18, 15, 19] + selectExpressions: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 13:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 17:double, DoubleColDivideDoubleColumn(col 14:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 14:double, DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 15:double) -> 18:double, DoubleScalarDivideDoubleColumn(val 3.0, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 15:double, DoubleScalarDivideDoubleColumn(val 1.2, col 14:double)(children: DoubleColAddDoubleScalar(col 5:double, val 200.0) -> 14:double) -> 19:double Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: _col0 (type: double), _col1 (type: double) - sort order: ++ + key expressions: _col0 (type: double), _col1 (type: double), _col2 (type: double), _col3 (type: double), _col4 (type: double), _col5 (type: double) + sort order: ++++++ Reduce Sink Vectorization: className: VectorReduceSinkObjectHashOperator native: true nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine spark IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE TopN Hash Memory Usage: 0.1 - value expressions: _col2 (type: double), _col4 (type: double), _col5 (type: double) Execution mode: vectorized Map Vectorization: enabled: true @@ -466,12 +502,12 @@ STAGE PLANS: vectorized: true Reduce Operator Tree: Select Operator - expressions: KEY.reducesinkkey0 (type: double), KEY.reducesinkkey1 (type: double), VALUE._col0 (type: double), KEY.reducesinkkey1 (type: double), VALUE._col1 (type: double), VALUE._col2 (type: double) + expressions: KEY.reducesinkkey0 (type: double), KEY.reducesinkkey1 (type: double), KEY.reducesinkkey2 (type: double), KEY.reducesinkkey1 (type: double), KEY.reducesinkkey4 (type: double), KEY.reducesinkkey5 (type: double) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 Select Vectorization: className: VectorSelectOperator native: true - projectedOutputColumnNums: [0, 1, 2, 1, 3, 4] + projectedOutputColumnNums: [0, 1, 2, 1, 4, 5] Statistics: Num rows: 1365 Data size: 293479 Basic stats: COMPLETE Column stats: NONE Limit Number of rows: 100 @@ -496,16 +532,17 @@ STAGE PLANS: Processor Tree: ListSink -PREHOOK: query: select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100 +PREHOOK: query: select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100 PREHOOK: type: QUERY PREHOOK: Input: default@alltypesorc #### A masked pattern was here #### -POSTHOOK: query: select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0), cbigint / (cdouble + 200.0), 3 / (cdouble + 200.0), 1.2 / (cdouble + 200.0) -from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2 limit 100 +POSTHOOK: query: select (cdouble + 200.0) as s1, cbigint / (cdouble + 200.0) as s2, (cdouble + 200.0) / (cdouble + 200.0) as s3, cbigint / (cdouble + 200.0) as s4, 3 / (cdouble + 200.0) as s5, 1.2 / (cdouble + 200.0) as s6 +from alltypesorc where cdouble >= -500 and cdouble < -199 order by s1, s2, s3, s4, s5, s6 limit 100 POSTHOOK: type: QUERY POSTHOOK: Input: default@alltypesorc #### A masked pattern was here #### +s1 s2 s3 s4 s5 s6 -113.0 -1.6495816690265486E7 1.0 -1.6495816690265486E7 -0.02654867256637168 -0.010619469026548672 -113.0 NULL 1.0 NULL -0.02654867256637168 -0.010619469026548672 -116.0 NULL 1.0 NULL -0.02586206896551724 -0.010344827586206896 @@ -607,13 +644,14 @@ POSTHOOK: Input: default@alltypesorc 0.0 NULL NULL NULL NULL NULL 0.0 NULL NULL NULL NULL NULL PREHOOK: query: explain vectorization expression -select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100 +select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100 PREHOOK: type: QUERY POSTHOOK: query: explain vectorization expression -select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100 +select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100 POSTHOOK: type: QUERY +Explain PLAN VECTORIZATION: enabled: true enabledConditionsMet: [hive.vectorized.execution.enabled IS true] @@ -644,24 +682,23 @@ STAGE PLANS: predicate: ((cdouble > 1.0E9D) or (cint > 500000000) or (ctinyint = 0Y)) (type: boolean) Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: cint (type: int), cbigint (type: bigint), ctinyint (type: tinyint), (cint / (cint - 528534767)) (type: double), (cbigint / (cbigint - 1018195815)) (type: double), (ctinyint / ctinyint) (type: double), (cint % (cint - 528534767)) (type: int), (cbigint % (cbigint - 1018195815)) (type: bigint), (ctinyint % ctinyint) (type: tinyint) + expressions: cint (type: int), cbigint (type: bigint), ctinyint (type: tinyint), (UDFToDouble(cint) / UDFToDouble((cint - 528534767))) (type: double), (UDFToDouble(cbigint) / UDFToDouble((cbigint - 1018195815L))) (type: double), (UDFToDouble(ctinyint) / UDFToDouble(ctinyint)) (type: double), (cint % (cint - 528534767)) (type: int), (cbigint % (cbigint - 1018195815L)) (type: bigint), (ctinyint % ctinyint) (type: tinyint) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Select Vectorization: className: VectorSelectOperator native: true - projectedOutputColumnNums: [2, 3, 0, 14, 15, 16, 17, 18, 13] - selectExpressions: LongColDivideLongColumn(col 2:int, col 13:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 13:int) -> 14:double, LongColDivideLongColumn(col 3:bigint, col 13:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 13:bigint) -> 15:double, LongColDivideLongColumn(col 0:tinyint, col 0:tinyint) -> 16:double, LongColModuloLongColumn(col 2:int, col 13:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 13:int) -> 17:int, LongColModuloLongColumn(col 3:bigint, col 13:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 13:bigint) -> 18:bigint, LongColModuloLongColumn(col 0:tinyint, col 0:tinyint) -> 13:tinyint + projectedOutputColumnNums: [2, 3, 0, 16, 17, 18, 19, 20, 14] + selectExpressions: DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 2:int) -> 13:double, CastLongToDouble(col 14:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 14:int) -> 15:double) -> 16:double, DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 3:bigint) -> 13:double, CastLongToDouble(col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 14:bigint) -> 15:double) -> 17:double, DoubleColDivideDoubleColumn(col 13:double, col 15:double)(children: CastLongToDouble(col 0:tinyint) -> 13:double, CastLongToDouble(col 0:tinyint) -> 15:double) -> 18:double, LongColModuloLongColumn(col 2:int, col 14:int)(children: LongColSubtractLongScalar(col 2:int, val 528534767) -> 14:int) -> 19:int, LongColModuloLongColumn(col 3:bigint, col 14:bigint)(children: LongColSubtractLongScalar(col 3:bigint, val 1018195815) -> 14:bigint) -> 20:bigint, LongCol ModuloLongColumn(col 0:tinyint, col 0:tinyint) -> 14:tinyint Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: _col3 (type: double), _col4 (type: double) - sort order: ++ + key expressions: _col0 (type: int), _col1 (type: bigint), _col2 (type: tinyint), _col3 (type: double), _col4 (type: double), _col5 (type: double), _col6 (type: int), _col7 (type: bigint), _col8 (type: tinyint) + sort order: +++++++++ Reduce Sink Vectorization: className: VectorReduceSinkObjectHashOperator native: true nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine spark IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE TopN Hash Memory Usage: 0.1 - value expressions: _col0 (type: int), _col1 (type: bigint), _col2 (type: tinyint), _col5 (type: double), _col6 (type: int), _col7 (type: bigint), _col8 (type: tinyint) Execution mode: vectorized Map Vectorization: enabled: true @@ -682,12 +719,12 @@ STAGE PLANS: vectorized: true Reduce Operator Tree: Select Operator - expressions: VALUE._col0 (type: int), VALUE._col1 (type: bigint), VALUE._col2 (type: tinyint), KEY.reducesinkkey0 (type: double), KEY.reducesinkkey1 (type: double), VALUE._col3 (type: double), VALUE._col4 (type: int), VALUE._col5 (type: bigint), VALUE._col6 (type: tinyint) + expressions: KEY.reducesinkkey0 (type: int), KEY.reducesinkkey1 (type: bigint), KEY.reducesinkkey2 (type: tinyint), KEY.reducesinkkey3 (type: double), KEY.reducesinkkey4 (type: double), KEY.reducesinkkey5 (type: double), KEY.reducesinkkey6 (type: int), KEY.reducesinkkey7 (type: bigint), KEY.reducesinkkey8 (type: tinyint) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Select Vectorization: className: VectorSelectOperator native: true - projectedOutputColumnNums: [2, 3, 4, 0, 1, 5, 6, 7, 8] + projectedOutputColumnNums: [0, 1, 2, 3, 4, 5, 6, 7, 8] Statistics: Num rows: 12288 Data size: 2641964 Basic stats: COMPLETE Column stats: NONE Limit Number of rows: 100 @@ -712,113 +749,114 @@ STAGE PLANS: Processor Tree: ListSink -PREHOOK: query: select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100 +PREHOOK: query: select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100 PREHOOK: type: QUERY PREHOOK: Input: default@alltypesorc #### A masked pattern was here #### -POSTHOOK: query: select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)), (ctinyint % ctinyint) as c3 -from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by c1, c2 limit 100 +POSTHOOK: query: select cint, cbigint, ctinyint, (cint / (cint - 528534767)) as c1, (cbigint / (cbigint - 1018195815)) as c2, (ctinyint / ctinyint) as c3, (cint % (cint - 528534767)) as c4, (cbigint % (cbigint - 1018195815)) as c5, (ctinyint % ctinyint) as c6 +from alltypesorc where cint > 500000000 or cdouble > 1000000000 or ctinyint = 0 order by cint, cbigint, ctinyint, c1, c2, c3, c4, c5, c6 limit 100 POSTHOOK: type: QUERY POSTHOOK: Input: default@alltypesorc #### A masked pattern was here #### -528534767 NULL -1 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -11 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -11 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -11 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -12 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -13 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -16 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -16 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -19 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -21 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -21 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -22 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -22 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -22 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -23 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -23 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -23 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -24 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -28 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -28 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -30 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -32 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -33 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -33 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -34 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -34 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -36 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -37 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -4 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -4 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -40 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -43 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -44 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -45 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -45 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -47 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -48 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -48 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -5 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -5 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -5 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -50 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -51 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -53 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -54 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -55 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -55 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -56 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -56 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -57 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -59 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -62 NULL NULL 1.0 NULL NULL 0 -528534767 NULL -7 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 0 NULL NULL NULL NULL NULL NULL -528534767 NULL 0 NULL NULL NULL NULL NULL NULL -528534767 NULL 10 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 13 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 16 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 18 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 19 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 2 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 21 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 24 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 24 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 26 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 27 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 28 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 29 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 29 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 30 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 31 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 31 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 33 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 34 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 34 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 36 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 36 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 38 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 38 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 38 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 39 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 4 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 40 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 40 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 41 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 43 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 46 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 5 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 51 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 51 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 53 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 53 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 61 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 61 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 61 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 62 NULL NULL 1.0 NULL NULL 0 -528534767 NULL 9 NULL NULL 1.0 NULL NULL 0 -528534767 NULL NULL NULL NULL NULL NULL NULL NULL -528534767 NULL NULL NULL NULL NULL NULL NULL NULL +cint cbigint ctinyint c1 c2 c3 c4 c5 c6 +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +253665376 NULL 0 -0.9228578528774781 NULL NULL 253665376 NULL NULL +500063547 -1645852809 NULL -17.56382575105668 0.6178013397250965 NULL 16052807 -1645852809 NULL +500274721 -1887561756 NULL -17.70254446861127 0.6495936807799166 NULL 19853939 -1887561756 NULL +500276420 -1625318563 11 -17.70366893718164 0.6148325034757953 1.0 19884521 -1625318563 0 +500670123 -1887561756 NULL -17.967935387941793 0.6495936807799166 NULL 26971175 -1887561756 NULL +500778550 -1101568669 11 -18.042031808585442 0.5196655936613004 1.0 1166644 -1101568669 0 +500904649 -1645852809 NULL -18.1289362933593 0.6178013397250965 NULL 3562525 -1645852809 NULL +500997302 1025147239 8 -18.193297821713074 147.47298380878507 1.0 5322932 3287911 0 +501304330 591451136 11 -18.409705654007684 -1.3859601890900202 1.0 11156464 164706457 0 +501557797 -1645852809 NULL -18.592073053422975 0.6178013397250965 NULL 15972337 -1645852809 NULL +501641421 -1401137514 8 -18.65299397851052 0.5791419880860906 1.0 17561193 -1401137514 0 +501782731 1864027286 NULL -18.756805313808638 2.2037809539011586 NULL 20246083 172364344 NULL +501860407 -1887561756 NULL -18.8143373261814 0.6495936807799166 NULL 21721927 -1887561756 NULL +502884543 1864027286 NULL -19.605463991269627 2.2037809539011586 NULL 15530287 172364344 NULL +502950658 1588596137 8 -19.65871307067993 2.785054768955758 1.0 16852587 447795493 0 +503152400 -1645852809 NULL -19.82291092079789 0.6178013397250965 NULL 20887427 -1645852809 NULL +504321494 -1874900970 -51 -20.82830743286957 0.6480602307260869 1.0 20056034 -1874900970 0 +504331720 -1116957074 8 -20.83753008453853 0.5231274442942245 1.0 20270780 -1116957074 0 +504544803 -521081462 8 -21.031494795073474 0.3385234549915337 1.0 755559 -521081462 0 +504652599 1864027286 NULL -21.13093748440259 2.2037809539011586 NULL 3127071 172364344 NULL +504721711 -1887561756 NULL -21.19516751650859 0.6495936807799166 NULL 4647535 -1887561756 NULL +504864574 -2125392655 11 -21.329127903604334 0.6761039733041139 1.0 7790521 -2125392655 0 +505754402 -1752259889 8 -22.201330048925907 0.6324807454853283 1.0 4586372 -1752259889 0 +506168952 -1645852809 NULL -22.631366306123876 0.6178013397250965 NULL 14121022 -1645852809 NULL +506277934 -965620543 11 -22.74707879598144 0.4867489569314258 1.0 16627608 -965620543 0 +506412347 -1645852809 NULL -22.891363015438635 0.6178013397250965 NULL 19719107 -1645852809 NULL +506866472 -1887561756 NULL -23.392079164512023 0.6495936807799166 NULL 8495687 -1887561756 NULL +507172707 -744509685 8 -23.74175088919327 0.42236759628877313 1.0 15845327 -744509685 0 +507314980 1864027286 NULL -23.907637715684892 2.2037809539011586 NULL 19259879 172364344 NULL +507716839 -1645852809 NULL -24.388442452101863 0.6178013397250965 NULL 8086567 -1645852809 NULL +508118381 1864027286 NULL -24.887773036814647 2.2037809539011586 NULL 18125117 172364344 NULL +508811234 -1645852809 NULL -25.797164939972976 0.6178013397250965 NULL 15722909 -1645852809 NULL +508932874 -1645852809 NULL -25.963455366275085 0.6178013397250965 NULL 18885549 -1645852809 NULL +509113732 231180051 -51 -26.21455200508109 -0.29374259268331504 1.0 4166822 231180051 0 +510227766 -392065584 8 -27.8706362664207 0.2780091579320041 1.0 15938739 -392065584 0 +510438184 -1934421505 11 -28.206329559563812 0.6551548322557426 1.0 3733860 -1934421505 0 +510615289 -1887561756 NULL -28.494986795932338 0.6495936807799166 NULL 8869905 -1887561756 NULL +510621074 1899510896 -51 -28.50451182790729 2.1553141855290683 1.0 9037670 136880734 0 +510824788 -1887561756 NULL -28.843895749396427 0.6495936807799166 NULL 14945376 -1887561756 NULL +511012894 1864027286 NULL -29.164284777089755 2.2037809539011586 NULL 2878577 172364344 NULL +511193256 539703514 11 -29.478011229817287 -1.1279251784659332 1.0 8289437 61211213 0 +511270713 1323416266 11 -29.614754043285547 4.335935752876533 1.0 10613147 102534462 0 +513054293 -1645852809 NULL -33.14202736944618 0.6178013397250965 NULL 2198651 -1645852809 NULL +513112567 1081141978 11 -33.27103571474887 17.175661334591595 1.0 4179967 11057207 0 +513621126 1507857719 11 -34.43968686117629 3.079385401809817 1.0 6557332 38872007 0 +514017068 -1645852809 NULL -35.40623538206709 0.6178013397250965 NULL 5897603 -1645852809 NULL +514430128 252972426 -51 -36.47240656070673 -0.3305863746932597 1.0 6663124 252972426 0 +515263287 -1887561756 NULL -38.824855027472445 0.6495936807799166 NULL 10947047 -1887561756 NULL +515486221 -459077368 -51 -39.50526142912781 0.31075996862524785 1.0 6592927 -459077368 0 +515526733 -1645852809 NULL -39.631410326879525 0.6178013397250965 NULL 8213407 -1645852809 NULL +515696675 773138718 8 -40.1692615226624 -3.1549329828223667 1.0 2172995 37967427 0 +516113449 -1887561756 NULL -41.55061878296651 0.6495936807799166 NULL 6839411 -1887561756 NULL +516141808 -1887561756 NULL -41.64798802287654 0.6495936807799166 NULL 8030489 -1887561756 NULL +516656920 -1750908332 8 -43.497522741284676 0.6323013650089341 1.0 5909499 -1750908332 0 +517204863 725306795 -51 -45.6495362184887 -2.476387796988771 1.0 7359183 139528755 0 +517821258 -1161186365 8 -48.33348793565208 0.5328052948473682 1.0 3572826 -1161186365 0 +518020906 -1887561756 NULL -49.27028291509656 0.6495936807799166 NULL 2841717 -1887561756 NULL +518170426 -2122540529 -51 -49.99550149884107 0.6758098409167198 1.0 10317717 -2122540529 0 +518203655 -1089866594 8 -50.15952348595195 0.5169992071140812 1.0 1648055 -1089866594 0 +518213127 -1645852809 NULL -50.20647174286257 0.6178013397250965 NULL 2131127 -1645852809 NULL +518304665 1758550605 11 -50.66466248332617 2.3752809176800223 1.0 6799565 277841025 0 +519195191 301311742 8 -55.590873825535546 -0.42030748533591705 1.0 5518511 301311742 0 +519627078 -1887561756 NULL -58.334667723581276 0.6495936807799166 NULL 2981116 -1887561756 NULL +NULL -1111841132 0 NULL 0.5219820874778469 NULL NULL -1111841132 NULL +NULL -1300968933 0 NULL 0.5609644308891505 NULL NULL -1300968933 NULL +NULL -1355080830 0 NULL 0.5709746619109379 NULL NULL -1355080830 NULL +NULL -1379420228 0 NULL 0.5753299124049946 NULL NULL -1379420228 NULL +NULL -1418871864 0 NULL 0.5822045387685764 NULL NULL -1418871864 NULL +NULL -203039588 0 NULL 0.1662575351985599 NULL NULL -203039588 NULL +NULL -229832118 0 NULL 0.18415622913786178 NULL NULL -229832118 NULL +NULL -277546656 0 NULL 0.21419893397937406 NULL NULL -277546656 NULL +NULL -39854776 0 NULL 0.03766811940658894 NULL NULL -39854776 NULL +NULL -438779645 0 NULL 0.3011578829200047 NULL NULL -438779645 NULL +NULL -495480552 0 NULL 0.32733585778445334 NULL NULL -495480552 NULL +NULL -741129356 0 NULL 0.42125774599060745 NULL NULL -741129356 NULL +NULL -901264012 0 NULL 0.46954044013967267 NULL NULL -901264012 NULL NULL 1018195815 0 NULL NULL NULL NULL NULL NULL +NULL 1049949527 0 NULL 33.065410651831826 NULL NULL 2077031 NULL +NULL 10989626 0 NULL -0.010910999277030852 NULL NULL 10989626 NULL +NULL 1561097160 0 NULL 2.87547115949768 NULL NULL 475294470 NULL +NULL 1580847931 0 NULL 2.8096365161452623 NULL NULL 455543699 NULL +NULL 1585496199 0 NULL 2.794808964909849 NULL NULL 450895431 NULL +NULL 1638241933 0 NULL 2.6421291665920887 NULL NULL 398149697 NULL +NULL 1738765387 0 NULL 2.413043035072816 NULL NULL 297626243 NULL +NULL 1907356119 0 NULL 2.145120638449015 NULL NULL 129035511 NULL +NULL 2136716416 0 NULL 1.9103058218951838 NULL NULL 1018195815 NULL +NULL 2144209609 0 NULL 1.904248083305452 NULL NULL 1018195815 NULL +NULL 406548885 0 NULL -0.6646790248746937 NULL NULL 406548885 NULL +NULL 473839931 0 NULL -0.8704598313848666 NULL NULL 473839931 NULL +NULL 53950949 0 NULL -0.05595150246825374 NULL NULL 53950949 NULL +NULL 618557893 0 NULL -1.5477957895096852 NULL NULL 218919971 NULL +NULL 738226024 0 NULL -2.636805997401341 NULL NULL 178286442 NULL +NULL 98841361 0 NULL -0.10751170081349277 NULL NULL 98841361 NULL