[fix](fe) LIST partition table support modify default bucket num (#39688)
## Proposed changes bp #39696 Issue Number: close #39684 ```sql CREATE TABLE `test1` ( `id1` VARCHAR(255) NULL COMMENT 'id1', `id2` VARCHAR(255) NULL COMMENT 'id2', `event_time` VARCHAR(255) NULL COMMENT '事件时间', `event_date` VARCHAR(255) NULL COMMENT '事件日期', `event_ts` VARCHAR(256) NULL COMMENT '事件发生时间戳(毫秒)', `dt` VARCHAR(255) NOT NULL COMMENT '日期分区', `hr` VARCHAR(255) NOT NULL COMMENT '小时分区' ) ENGINE = OLAP DUPLICATE KEY(`id1`) COMMENT 'xxx' PARTITION BY LIST(`dt`, `hr`) ( PARTITION p2024082021 VALUES IN (("2024-08-20", "21")) ) DISTRIBUTED BY HASH(`dt`, `hr`) BUCKETS 2 PROPERTIES ( "replication_allocation" = "tag.location.default: 1", "min_load_replica_num" = "-1", "is_being_synced" = "false", "storage_medium" = "hdd", "storage_format" = "V2", "inverted_index_storage_format" = "V1", "light_schema_change" = "true", "disable_auto_compaction" = "false", "enable_single_replica_compaction" = "false", "group_commit_interval_ms" = "10000", "group_commit_data_bytes" = "134217728" ); ``` 1. 修改前表已有分区的bucket num为2  2. 修改List分区表bucket num(从2 -> 4)  3. 修改List分区后,添加的新分区bucket num为4  Co-authored-by: tongyang.han <tongyang.han@jiduauto.com>
This commit is contained in:
@ -4577,7 +4577,7 @@ public class Env {
|
||||
GroupId groupId = null;
|
||||
if (!Strings.isNullOrEmpty(assignedGroup)) {
|
||||
String fullAssignedGroupName = GroupId.getFullGroupName(db.getId(), assignedGroup);
|
||||
//When the new name is the same as the old name, we return it to prevent npe
|
||||
// When the new name is the same as the old name, we return it to prevent npe
|
||||
if (!Strings.isNullOrEmpty(oldGroup)) {
|
||||
String oldFullGroupName = GroupId.getFullGroupName(db.getId(), oldGroup);
|
||||
if (oldFullGroupName.equals(fullAssignedGroupName)) {
|
||||
@ -5180,7 +5180,8 @@ public class Env {
|
||||
throw new DdlException("Cannot change default bucket number of colocate table.");
|
||||
}
|
||||
|
||||
if (olapTable.getPartitionInfo().getType() != PartitionType.RANGE) {
|
||||
if (olapTable.getPartitionInfo().getType() != PartitionType.RANGE
|
||||
&& olapTable.getPartitionInfo().getType() != PartitionType.LIST) {
|
||||
throw new DdlException("Only support change partitioned table's distribution.");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user