This is an automated email from the ASF dual-hosted git repository.
w41ter pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push:
new 0784a0d0cbd [fix](analysis) Fix ColumnDef to sql result #41205 (#41323)
0784a0d0cbd is described below
commit 0784a0d0cbd3f50466b1a06a1d611003326c597b
Author: walter <[email protected]>
AuthorDate: Thu Sep 26 14:11:09 2024 +0800
[fix](analysis) Fix ColumnDef to sql result #41205 (#41323)
cherry pick from #41205
---
.../src/main/java/org/apache/doris/analysis/ColumnDef.java | 13 ++++++++++++-
.../test/java/org/apache/doris/analysis/ColumnDefTest.java | 8 +++++++-
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnDef.java
b/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnDef.java
index da911c989af..d74e1788fb6 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnDef.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ColumnDef.java
@@ -167,6 +167,17 @@ public class ColumnDef {
}
return value;
}
+
+ public String toSql() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("DEFAULT ");
+ if (value != null) {
+ sb.append('"').append(value).append('"');
+ } else {
+ sb.append("NULL");
+ }
+ return sb.toString();
+ }
}
// parameter initialized in constructor
@@ -582,7 +593,7 @@ public class ColumnDef {
}
if (defaultValue.isSet) {
- sb.append("DEFAULT \"").append(defaultValue.value).append("\" ");
+ sb.append(defaultValue.toSql()).append(" ");
}
sb.append("COMMENT \"").append(comment).append("\"");
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/analysis/ColumnDefTest.java
b/fe/fe-core/src/test/java/org/apache/doris/analysis/ColumnDefTest.java
index fc9bd4a7ac6..9649b8523d6 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/analysis/ColumnDefTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/analysis/ColumnDefTest.java
@@ -89,7 +89,7 @@ public class ColumnDefTest {
ColumnDef column = new ColumnDef("col", intCol, false,
AggregateType.REPLACE_IF_NOT_NULL, false, DefaultValue.NOT_SET, "");
column.analyze(true);
Assert.assertEquals(AggregateType.REPLACE_IF_NOT_NULL,
column.getAggregateType());
- Assert.assertEquals("`col` int REPLACE_IF_NOT_NULL NULL DEFAULT
\"null\" COMMENT \"\"", column.toSql());
+ Assert.assertEquals("`col` int REPLACE_IF_NOT_NULL NULL DEFAULT
NULL COMMENT \"\"", column.toSql());
} // CHECKSTYLE IGNORE THIS LINE
{ // CHECKSTYLE IGNORE THIS LINE
// not allow null
@@ -98,6 +98,12 @@ public class ColumnDefTest {
Assert.assertEquals(AggregateType.REPLACE_IF_NOT_NULL,
column.getAggregateType());
Assert.assertEquals("`col` int REPLACE_IF_NOT_NULL NULL DEFAULT
\"10\" COMMENT \"\"", column.toSql());
} // CHECKSTYLE IGNORE THIS LINE
+ { // CHECKSTYLE IGNORE THIS LINE
+ ColumnDef column = new ColumnDef("col", intCol, false,
AggregateType.REPLACE_IF_NOT_NULL, true, DefaultValue.NULL_DEFAULT_VALUE, "");
+ column.analyze(true);
+ Assert.assertEquals(AggregateType.REPLACE_IF_NOT_NULL,
column.getAggregateType());
+ Assert.assertEquals("`col` int REPLACE_IF_NOT_NULL NULL DEFAULT
NULL COMMENT \"\"", column.toSql());
+ } // CHECKSTYLE IGNORE THIS LINE
}
@Test(expected = AnalysisException.class)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]