diff --git a/fe/fe-common/src/main/java/org/apache/doris/catalog/ArrayType.java b/fe/fe-common/src/main/java/org/apache/doris/catalog/ArrayType.java index d3bd642a6d..477d278bf8 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/catalog/ArrayType.java +++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/ArrayType.java @@ -203,7 +203,7 @@ public class ArrayType extends Type { @Override public String toString() { - return toSql(0).toUpperCase(); + return String.format("ARRAY<%s>", itemType.toString()).toUpperCase(); } @Override diff --git a/fe/fe-common/src/main/java/org/apache/doris/catalog/MapType.java b/fe/fe-common/src/main/java/org/apache/doris/catalog/MapType.java index 8227770636..e9efc83a8f 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/catalog/MapType.java +++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/MapType.java @@ -174,7 +174,8 @@ public class MapType extends Type { @Override public String toString() { - return toSql(0).toUpperCase(); + return String.format("MAP<%s,%s>", + keyType.toString(), valueType.toString()); } @Override diff --git a/fe/fe-common/src/main/java/org/apache/doris/catalog/StructField.java b/fe/fe-common/src/main/java/org/apache/doris/catalog/StructField.java index 488e477a07..5a2b3f221e 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/catalog/StructField.java +++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/StructField.java @@ -158,4 +158,16 @@ public class StructField { return otherStructField.name.equals(name) && otherStructField.type.equals(type) && otherStructField.containsNull == containsNull; } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(name); + if (type != null) { + sb.append(":").append(type); + } + if (StringUtils.isNotBlank(comment)) { + sb.append(String.format(" COMMENT '%s'", comment)); + } + return sb.toString(); + } } diff --git a/fe/fe-common/src/main/java/org/apache/doris/catalog/StructType.java b/fe/fe-common/src/main/java/org/apache/doris/catalog/StructType.java index bd1efec99b..0a058ae540 100644 --- a/fe/fe-common/src/main/java/org/apache/doris/catalog/StructType.java +++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/StructType.java @@ -303,7 +303,11 @@ public class StructType extends Type { @Override public String toString() { - return toSql(0); + ArrayList fieldsSql = Lists.newArrayList(); + for (StructField f : fields) { + fieldsSql.add(f.toString()); + } + return String.format("STRUCT<%s>", Joiner.on(",").join(fieldsSql)); } @Override diff --git a/regression-test/data/schema_change_p0/test_alter_table_column.out b/regression-test/data/schema_change_p0/test_alter_table_column.out index 81a715c2bc..f01d5d28ed 100644 --- a/regression-test/data/schema_change_p0/test_alter_table_column.out +++ b/regression-test/data/schema_change_p0/test_alter_table_column.out @@ -21,9 +21,9 @@ value2 INT Yes false \N SUM -- !sql -- k1 INT Yes true \N value1 INT Yes false \N NONE -value2 ARRAY Yes false [] NONE -value3 ARRAY Yes false \N NONE -value4 ARRAY No false [] NONE +value2 ARRAY Yes false [] NONE +value3 ARRAY Yes false \N NONE +value4 ARRAY No false [] NONE -- !sql -- 1 2 [] \N []