S01002
错误代码
S01002
报错信息
Usage: addRangePartitions(dbHandle, newRanges, [level=0], [locations]). The new partition ranges specified in newRanges cannot overlap with the existing partition ranges. RefId: S01002
错误原因
使用 addRangePartitions
添加新分区时,newRanges
字段的范围可能与数据库中已有的分区范围重叠。
例如:
db=database(directory="dfs://db233", partitionType=RANGE, partitionScheme=0 50 100)
addRangePartitions(dbHandle=db, newRanges=50 100 150 200)
其中 50~100 的范围与旧的范围重叠。
解决办法
移除 newRanges 字段中和已有分区范围的重叠部分后重试。已有分区的范围可以通过 schema
函数查看:
schema(database("dfs://db233"))
// 返回的字段中包含已有的分区范围: partitionSchema->[0,50,100]
addRangePartitions(dbHandle=db, newRanges=100 150 200) //成功,返回2,代表成功添加两个范围分区