[Improve](config)delete confused config for nested complex type (#29988)
This commit is contained in:
@ -28,7 +28,6 @@ import org.apache.doris.catalog.StructField;
|
||||
import org.apache.doris.catalog.StructType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.qe.SessionVariable;
|
||||
import org.apache.doris.thrift.TColumnDesc;
|
||||
import org.apache.doris.thrift.TPrimitiveType;
|
||||
@ -130,18 +129,10 @@ public class TypeDef implements ParseNode {
|
||||
Type itemType = ((ArrayType) type).getItemType();
|
||||
if (itemType instanceof ScalarType) {
|
||||
analyzeNestedType(type, (ScalarType) itemType);
|
||||
} else if (Config.disable_nested_complex_type && !(itemType instanceof ArrayType)) {
|
||||
// now we can array nesting array
|
||||
throw new AnalysisException("Unsupported data type: ARRAY<" + itemType.toSql() + ">");
|
||||
}
|
||||
}
|
||||
if (type.isMapType()) {
|
||||
MapType mt = (MapType) type;
|
||||
if (Config.disable_nested_complex_type && (!(mt.getKeyType() instanceof ScalarType)
|
||||
|| !(mt.getValueType() instanceof ScalarType))) {
|
||||
throw new AnalysisException("Unsupported data type: MAP<" + mt.getKeyType().toSql() + ","
|
||||
+ mt.getValueType().toSql() + ">");
|
||||
}
|
||||
if (mt.getKeyType() instanceof ScalarType) {
|
||||
analyzeNestedType(type, (ScalarType) mt.getKeyType());
|
||||
}
|
||||
@ -160,8 +151,6 @@ public class TypeDef implements ParseNode {
|
||||
throw new AnalysisException("Duplicate field name "
|
||||
+ field.getName() + " in struct " + type.toSql());
|
||||
}
|
||||
} else if (Config.disable_nested_complex_type) {
|
||||
throw new AnalysisException("Unsupported field type: " + fieldType.toSql() + " for STRUCT");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,7 +24,6 @@ import org.apache.doris.catalog.KeysType;
|
||||
import org.apache.doris.catalog.PrimitiveType;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.nereids.exceptions.AnalysisException;
|
||||
import org.apache.doris.nereids.types.ArrayType;
|
||||
import org.apache.doris.nereids.types.BigIntType;
|
||||
@ -392,21 +391,11 @@ public class ColumnDefinition {
|
||||
Type itemType = ((org.apache.doris.catalog.ArrayType) catalogType).getItemType();
|
||||
if (itemType instanceof ScalarType) {
|
||||
validateNestedType(catalogType, (ScalarType) itemType);
|
||||
} else if (Config.disable_nested_complex_type
|
||||
&& !(itemType instanceof org.apache.doris.catalog.ArrayType)) {
|
||||
// now we can array nesting array
|
||||
throw new AnalysisException(
|
||||
"Unsupported data type: ARRAY<" + itemType.toSql() + ">");
|
||||
}
|
||||
}
|
||||
if (catalogType.isMapType()) {
|
||||
org.apache.doris.catalog.MapType mt =
|
||||
(org.apache.doris.catalog.MapType) catalogType;
|
||||
if (Config.disable_nested_complex_type && (!(mt.getKeyType() instanceof ScalarType)
|
||||
|| !(mt.getValueType() instanceof ScalarType))) {
|
||||
throw new AnalysisException("Unsupported data type: MAP<"
|
||||
+ mt.getKeyType().toSql() + "," + mt.getValueType().toSql() + ">");
|
||||
}
|
||||
if (mt.getKeyType() instanceof ScalarType) {
|
||||
validateNestedType(catalogType, (ScalarType) mt.getKeyType());
|
||||
}
|
||||
@ -426,9 +415,6 @@ public class ColumnDefinition {
|
||||
throw new AnalysisException("Duplicate field name " + field.getName()
|
||||
+ " in struct " + catalogType.toSql());
|
||||
}
|
||||
} else if (Config.disable_nested_complex_type) {
|
||||
throw new AnalysisException(
|
||||
"Unsupported field type: " + fieldType.toSql() + " for STRUCT");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user