diff --git a/fe/src/main/java/org/apache/doris/analysis/ColumnDef.java b/fe/src/main/java/org/apache/doris/analysis/ColumnDef.java index 1c2e684d3f..821a205671 100644 --- a/fe/src/main/java/org/apache/doris/analysis/ColumnDef.java +++ b/fe/src/main/java/org/apache/doris/analysis/ColumnDef.java @@ -69,7 +69,7 @@ public class ColumnDef { // default null public static DefaultValue NULL_DEFAULT_VALUE = new DefaultValue(true, null); // default "value" - public static DefaultValue HLL_EMPTY_DEFAULT_VALUE = new DefaultValue(true, "0"); + public static DefaultValue HLL_EMPTY_DEFAULT_VALUE = new DefaultValue(true, null); } // parameter initialized in constructor diff --git a/fe/src/main/java/org/apache/doris/analysis/InsertStmt.java b/fe/src/main/java/org/apache/doris/analysis/InsertStmt.java index 9f3e4f0b31..c3639a059d 100644 --- a/fe/src/main/java/org/apache/doris/analysis/InsertStmt.java +++ b/fe/src/main/java/org/apache/doris/analysis/InsertStmt.java @@ -380,6 +380,12 @@ public class InsertStmt extends DdlStmt { } targetColumns.add(col); } + // hll column mush in mentionedColumns + for (Column col : targetTable.getBaseSchema()) { + if (col.getType().isHllType() && !mentionedColumns.contains(col.getName())) { + throw new AnalysisException (" hll column " + col.getName() + " mush in insert into columns"); + } + } } /* @@ -598,7 +604,8 @@ public class InsertStmt extends DdlStmt { } } else if (expr instanceof FunctionCallExpr) { final FunctionCallExpr functionExpr = (FunctionCallExpr) expr; - if (!functionExpr.getFnName().getFunction().equalsIgnoreCase("hll_hash")) { + if (!functionExpr.getFnName().getFunction().equalsIgnoreCase("hll_hash") + && !functionExpr.getFnName().getFunction().equalsIgnoreCase("empty_hll")) { throw new AnalysisException(hllMismatchLog); } } else {