diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java index 835acddb30..1355776a9d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java @@ -89,6 +89,7 @@ import org.apache.doris.catalog.PartitionInfo; import org.apache.doris.catalog.PartitionItem; import org.apache.doris.catalog.PartitionType; import org.apache.doris.catalog.PrimitiveType; +import org.apache.doris.catalog.RandomDistributionInfo; import org.apache.doris.catalog.RangePartitionItem; import org.apache.doris.catalog.Replica; import org.apache.doris.catalog.Replica.ReplicaState; @@ -1416,6 +1417,11 @@ public class InternalCatalog implements CatalogIf { if (hashDistributionInfo.getBucketNum() <= 0) { throw new DdlException("Cannot assign hash distribution buckets less than 1"); } + } else if (distributionInfo.getType() == DistributionInfoType.RANDOM) { + RandomDistributionInfo randomDistributionInfo = (RandomDistributionInfo) distributionInfo; + if (randomDistributionInfo.getBucketNum() <= 0) { + throw new DdlException("Cannot assign random distribution buckets less than 1"); + } } } else { // make sure partition-dristribution-info is deep copied from default-distribution-info