Matthew Jacobs has posted comments on this change.

Change subject: IMPALA-3724: Support Kudu non-covering range partitions
......................................................................


Patch Set 3:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4856/3/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
File fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java:

PS3, Line 1342:     // CTAS into managed Kudu tables
              :     AnalyzesOk("create table t primary key (id) distribute by 
hash (id) into 3 buckets" +
              :         " stored as kudu as select id, bool_col, tinyint_col, 
smallint_col, int_col, " +
              :         "bigint_col, float_col, double_col, date_string_col, 
string_col " +
              :         "from functional.alltypestiny");
              :     // CTAS in an external Kudu table
              :     AnalysisError("create external table t stored as kudu " +
              :         "tblproperties('kudu.table_name'='t') as select id, 
int_col from " +
              :         "functional.alltypestiny", "CREATE TABLE AS SELECT is 
not supported for " +
              :         "external Kudu tables.");
              : 
              :     // CTAS into Kudu tables with unsupported types
              :     AnalysisError("create table t primary key (id) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select id, timestamp_col from 
functional.alltypestiny",
              :         "Cannot create table 't': Type TIMESTAMP is not 
supported in Kudu");
              :     AnalysisError("create table t primary key (cs) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select cs from 
functional.chars_tiny",
              :         "Cannot create table 't': Type CHAR(5) is not supported 
in Kudu");
              :     AnalysisError("create table t primary key (vc) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select vc from 
functional.chars_tiny",
              :         "Cannot create table 't': Type VARCHAR(32) is not 
supported in Kudu");
              :     AnalysisError("create table t primary key (id) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select id, s from 
functional.complextypes_fileformat",
              :         "Expr 's' in select list returns a complex type 
'STRUCT<f1:STRING,f2:INT>'.\n" +
              :         "Only scalar types are allowed in the select list.");
              :     AnalysisError("create table t primary key (id) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select id, m from 
functional.complextypes_fileformat",
              :         "Expr 'm' in select list returns a complex type 
'MAP<STRING,BIGINT>'.\n" +
              :         "Only scalar types are allowed in the select list.");
              :     AnalysisError("create table t primary key (id) distribute 
by hash into 3 buckets" +
              :         " stored as kudu as select id, a from 
functional.complextypes_fileformat",
              :         "Expr 'a' in select list returns a complex type 
'ARRAY<INT>'.\n" +
              :         "Only scalar types are allowed in the select list.");
We should have some CTAS coverage as well.

Easiest thing to do may be parametrizing these cases (assuming the same error 
conditions) to take the distribute by clause, and then executing for:

1. hash(id), as this already is
2. range(id) w/ some valid partitioning
3. hash(id) and range(id)


If there cases 2 and 3 result in different failures, it'd be good to know what 
they are, make sure they make sense, and unfortunately prob then worth breaking 
it into explicit test cases since parametrizing won't work well.


-- 
To view, visit http://gerrit.cloudera.org:8080/4856
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6799c01a37003f0f4c068d911a13e3f060110a06
Gerrit-PatchSet: 3
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Dimitris Tsirogiannis <[email protected]>
Gerrit-Reviewer: Alex Behm <[email protected]>
Gerrit-Reviewer: Dimitris Tsirogiannis <[email protected]>
Gerrit-Reviewer: Matthew Jacobs <[email protected]>
Gerrit-HasComments: Yes

Reply via email to