diff --git a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java index edb01513626042..36e362e625980b 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java +++ b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java @@ -1386,15 +1386,13 @@ public class Config extends ConfigBase { /** * Set the maximum number of rows that can be cached */ - @ConfField(mutable = true, masterOnly = false, description = {"SQL/Partition Cache可以缓存的最大行数。", - "Maximum number of rows that can be cached in SQL/Partition Cache, is 3000 by default."}) + @ConfField(mutable = true, masterOnly = false) public static int cache_result_max_row_count = 3000; /** * Set the maximum data size that can be cached */ - @ConfField(mutable = true, masterOnly = false, description = {"SQL/Partition Cache可以缓存的最大数据大小。", - "Maximum data size of rows that can be cached in SQL/Partition Cache, is 3000 by default."}) + @ConfField(mutable = true, masterOnly = false) public static int cache_result_max_data_size = 31457280; // 30M /** diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/AddColumnClause.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/AddColumnClause.java index 2d472cd54953e4..a0468973106d60 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AddColumnClause.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AddColumnClause.java @@ -73,12 +73,15 @@ public void analyze(Analyzer analyzer) throws AnalysisException, DdlException { if (columnDef == null) { throw new AnalysisException("No column definition in add column clause."); } + boolean isAggKey = false; if (tableName != null) { Table table = Env.getCurrentInternalCatalog().getDbOrDdlException(tableName.getDb()) .getTableOrDdlException(tableName.getTbl()); - if (table instanceof OlapTable && ((OlapTable) table).getKeysType() == KeysType.AGG_KEYS - && columnDef.getAggregateType() == null) { - columnDef.setIsKey(true); + if (table instanceof OlapTable && ((OlapTable) table).getKeysType() == KeysType.AGG_KEYS) { + isAggKey = true; + if (columnDef.getAggregateType() == null) { + columnDef.setIsKey(true); + } } } columnDef.analyze(true); @@ -94,6 +97,10 @@ public void analyze(Analyzer analyzer) throws AnalysisException, DdlException { throw new AnalysisException("Cannot add value column[" + columnDef.getName() + "] at first"); } + if (isAggKey && columnDef.getType().isArrayType()) { + throw new AnalysisException("Array column can't be used in aggregate table"); + } + if (Strings.isNullOrEmpty(rollupName)) { rollupName = null; }