This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch branch-c108335-hive-sql in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-c108335-hive-sql by this push: new 9e2f808bbd0 1 9e2f808bbd0 is described below commit 9e2f808bbd025d48062cda917983fa23d4d58005 Author: morningman <yun...@selectdb.com> AuthorDate: Wed Apr 9 18:48:41 2025 -0700 1 --- .../src/main/java/org/apache/doris/analysis/BoolLiteral.java | 2 +- .../src/main/java/org/apache/doris/analysis/LiteralExpr.java | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/BoolLiteral.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/BoolLiteral.java index 521dc1bd00b..2c58c3965ba 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/BoolLiteral.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/BoolLiteral.java @@ -114,7 +114,7 @@ public class BoolLiteral extends LiteralExpr { @Override public String getStringValueForArray(FormatOptions options) { String val = options.isBoolValueNum() ? getStringValue() : (value ? "true" : "false"); - return options.getNestedStringWrapper() + val + options.getNestedStringWrapper(); + return val; } @Override diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/LiteralExpr.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/LiteralExpr.java index 301b6277725..87841a69900 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/LiteralExpr.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/LiteralExpr.java @@ -114,10 +114,16 @@ public abstract class LiteralExpr extends Expr implements Comparable<LiteralExpr return literalExpr; } + /** + * 1. For numeric/complex type, no need to wrap with quota, call "getStringValueInFe". + * 2. For other type, call "getStringValueForArray()": + * 2.1. for null/boolean, getStringValueForArray() will return format value in FormatOptions. + * 2.2. for others, getStringValueForArray() will return value wrapped with quota. + */ public static String getStringLiteralForComplexType(Expr v, FormatOptions options) { if (!(v instanceof NullLiteral) && v.getType().isScalarType() - && (Type.getNumericTypes().contains((ScalarType) v.getActualScalarType(v.getType())) - || v.getType() == Type.BOOLEAN)) { + && Type.getNumericTypes().contains((ScalarType) v.getActualScalarType(v.getType()))) { + // This is a numeric type, no need to wrap with quota, so call getStringValueInFe return v.getStringValueInFe(options); } else if (v.getType().isComplexType()) { // these type should also call getStringValueInFe which should handle special case for itself --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org