DBZ-1113 allow adding multiple partitions in a single statement
This commit is contained in:
parent
cc0df61665
commit
030cf9ac14
@ -1268,7 +1268,9 @@ protected void parseAlterSpecification(Marker start, TableEditor table, Consumer
|
||||
tokens.canConsume("COLUMN");
|
||||
parseCreateDefinitionList(start, table);
|
||||
} else if (tokens.canConsume("PARTITION", "(")) {
|
||||
do {
|
||||
parsePartitionDefinition(start, table);
|
||||
} while (tokens.canConsume(','));
|
||||
tokens.consume(')');
|
||||
} else {
|
||||
parseCreateDefinition(start, table, true);
|
||||
|
@ -379,6 +379,16 @@ public void parseAddPartition() {
|
||||
assertThat(tables.forTable(new TableId(null, null, "flat_view_request_log"))).isNotNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
@FixFor("DBZ-1113")
|
||||
public void parseAddMultiplePartitions() {
|
||||
String ddl =
|
||||
"CREATE TABLE test (id INT, PRIMARY KEY (id));"
|
||||
+ "ALTER TABLE test ADD PARTITION (PARTITION p1 VALUES LESS THAN (10), PARTITION p_max VALUES LESS THAN MAXVALUE);";
|
||||
parser.parse(ddl, tables);
|
||||
assertThat(tables.size()).isEqualTo(1);
|
||||
}
|
||||
|
||||
@Test
|
||||
@FixFor("DBZ-688")
|
||||
public void parseGeomCollection() {
|
||||
|
@ -629,7 +629,10 @@ alterSpecification
|
||||
| IMPORT TABLESPACE #alterByImportTablespace
|
||||
| FORCE #alterByForce
|
||||
| validationFormat=(WITHOUT | WITH) VALIDATION #alterByValidate
|
||||
| ADD PARTITION '(' partitionDefinition ')' #alterByAddPartition
|
||||
| ADD PARTITION
|
||||
'('
|
||||
partitionDefinition (',' partitionDefinition)*
|
||||
')' #alterByAddPartition
|
||||
| DROP PARTITION uidList #alterByDropPartition
|
||||
| DISCARD PARTITION (uidList | ALL) TABLESPACE #alterByDiscardPartition
|
||||
| IMPORT PARTITION (uidList | ALL) TABLESPACE #alterByImportPartition
|
||||
|
Loading…
Reference in New Issue
Block a user