Files
impala/testdata/workloads/functional-query/queries/QueryTest
Kurt Deschler 7764830216 IMPALA-11430: Support custom hash schema for Kudu range tables
KUDU-2671 added support for custom hash partition specification at the
range partition level. This patch adds CREATE TABLE and ALTER TABLE
syntax to allow Kudu custom hash schema to be specified through Impala.
In addition, a new SHOW HASH SCHEMA statement has been added to allow
display of the hash schema information for each partition.

HASH syntax within a partition is similar to the table-level syntax
except that HASH clauses must follow the PARTITION clause and commas are
not allowed within a partition. These differences were required to keep
the grammar unambiguous and due to limitations of the Java Cup Parser.
To make the grammar more consistent, commas in the table-level partion
spec and between PARTITION clauses are now optional but allowed for
backward compatibility.

Example:

CREATE TABLE t1 (id int, c2 int, PRIMARY KEY(id, c2))
PARTITION BY HASH(id) PARTITIONS 3 HASH(c2) PARTITIONS 4
RANGE (c2)
(
  PARTITION 0 <= VALUES < 10
  PARTITION 10 <= VALUES < 20
      HASH(id) PARTITIONS 2 HASH(c2) PARTITIONS 3
  PARTITION 20 <= VALUES < 30
)
STORED AS KUDU;
ALTER TABLE t1 ADD RANGE PARTITION 30 <= VALUES < 40
      HASH(id) PARTITIONS 3 HASH(c2) PARTITIONS 4;

This bumps the toolchain to Kudu githash 43ee785b2d to get
the needed Kudu-side changes.

Testing:
Tests added to kudu_partition_ddl.test

Change-Id: I981056e0827f4957580706d6e73742e4e6743c1c
Reviewed-on: http://gerrit.cloudera.org:8080/18676
Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
Reviewed-by: Joe McDonnell <joemcdonnell@cloudera.com>
2022-07-16 06:06:46 +00:00
..
2021-07-06 18:35:30 +00:00
2022-02-11 07:01:58 +00:00
2021-02-15 22:25:41 +00:00