Tony Murphy created HIVE-4553:
---------------------------------
Summary: Column Column, and Column Scalar vectorized execution
tests
Key: HIVE-4553
URL: https://issues.apache.org/jira/browse/HIVE-4553
Project: Hive
Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Tony Murphy
Assignee: Tony Murphy
Fix For: vectorization-branch
review board review: https://reviews.apache.org/r/11133/
This patch adds Column Column, and Column Scalar vectorized execution tests.
These tests are generated in parallel with the vectorized expressions. The
tests focus is on validating the column vector and the vectorized row batch
metadata regarding nulls, repeating, and selection.
Overview of Changes:
CodeGen.java:
+ joinPath, getCamelCaseType, readFile and writeFile made static for use in
TestCodeGen.java.
+ filter types now specify null as their output type rather than "doesn't
matter" to make detection for test generation easier.
+ support for test generation added.
TestCodeGen.java & Templates:
TestClass.txt
TestColumnColumnFilterVectorExpressionEvaluation.txt,
TestColumnColumnOperationVectorExpressionEvaluation.txt,
TestColumnScalarFilterVectorExpressionEvaluation.txt,
TestColumnScalarOperationVectorExpressionEvaluation.txt
+This class is mutable and maintains a hashmap of TestSuiteClassName to test
cases. The tests cases are added over the course of vectorized expressions
class generation, with test classes being outputted at the end. For each column
vector (inputs and/or outputs) a matrix of pairwise covering Booleans is used
to generate test cases across nulls and repeating dimensions. Based on the
input column vector(s) nulls and repeating states the states of the output
column vector (if there is one) is validated, along with the null vector. For
filter operations the selection vector is validated against the generated data.
Each template corresponds to a class representing a test suite.
VectorizedRowGroupUtil.java
+added methods generateLongColumnVector and generateDoubleColumnVector for
generating the respective column vectors with optional nulls and/or repeating
values.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira