This is an automated email from the ASF dual-hosted git repository.
kxiao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 21230a3746f [Fix](Variant Type) forbit distribution info contains
variant columns (#33707)
21230a3746f is described below
commit 21230a3746ff4c524e2c7e1835dc99be8ca29f02
Author: lihangyu <[email protected]>
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 f06ce7d63a3..2dadc8d1b55 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
@@ -2177,6 +2177,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: [email protected]
For additional commands, e-mail: [email protected]