This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 4de357ccfb7fb7a2798d4b922f8b13d5daea426a Author: lihangyu <15605149...@163.com> AuthorDate: Wed Apr 17 23:03:11 2024 +0800 [Fix](Variant Type) forbit distribution info contains variant columns (#33707) --- .../java/org/apache/doris/datasource/InternalCatalog.java | 6 ++++++ regression-test/suites/variant_p0/load.groovy | 12 ++++++++++++ 2 files changed, 18 insertions(+) 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 b94c8b7d076..c22cbf38c6f 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 @@ -2110,6 +2110,12 @@ public class InternalCatalog implements CatalogIf<Database> { Preconditions.checkNotNull(distributionDesc); DistributionInfo defaultDistributionInfo = distributionDesc.toDistributionInfo(baseSchema); + if (defaultDistributionInfo instanceof HashDistributionInfo + && ((HashDistributionInfo) defaultDistributionInfo).getDistributionColumns() + .stream().anyMatch(column -> column.getType().isVariantType())) { + throw new DdlException("Hash distribution info should not contain variant columns"); + } + // calc short key column count short shortKeyColumnCount = Env.calcShortKeyColumnCount(baseSchema, stmt.getProperties(), isKeysRequired); if (LOG.isDebugEnabled()) { diff --git a/regression-test/suites/variant_p0/load.groovy b/regression-test/suites/variant_p0/load.groovy index 3f3609ec877..b85dd686f84 100644 --- a/regression-test/suites/variant_p0/load.groovy +++ b/regression-test/suites/variant_p0/load.groovy @@ -259,6 +259,18 @@ suite("regression_test_variant", "nonConcurrent"){ exception("errCode = 2, detailMessage = Doris hll, bitmap, array, map, struct, jsonb, variant column must use with specific function, and don't support filter, group by or order by") } + test { + sql """ + create table var( + `content` variant + )distributed by hash(`content`) buckets 8 + properties( + "replication_allocation" = "tag.location.default: 1" + ); + """ + exception("errCode = 2, detailMessage = Hash distribution info should not contain variant columns") + } + // 13. sparse columns table_name = "sparse_columns" create_table table_name --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org