From 5d5db157d01c10d08450dbcdd53de0a0e0358187 Mon Sep 17 00:00:00 2001 From: mch_ucchi <41606806+sohardforaname@users.noreply.github.com> Date: Wed, 17 May 2023 19:54:29 +0800 Subject: [PATCH] [Fix](planner) fix literal type incompatible after fold constant by be. (#19190) --- .../main/java/org/apache/doris/rewrite/FoldConstantsRule.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/rewrite/FoldConstantsRule.java b/fe/fe-core/src/main/java/org/apache/doris/rewrite/FoldConstantsRule.java index 1458631cc6..fe63bec342 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/rewrite/FoldConstantsRule.java +++ b/fe/fe-core/src/main/java/org/apache/doris/rewrite/FoldConstantsRule.java @@ -323,7 +323,7 @@ public class FoldConstantsRule implements ExprRewriteRule { // ATTN: make sure the child order of expr keep unchanged for (int i = 0; i < expr.getChildren().size(); i++) { Expr child = expr.getChild(i); - if (literalExpr.equals(replaceExpr(child, key, literalExpr))) { + if (!(child instanceof LiteralExpr) && literalExpr.equals(replaceExpr(child, key, literalExpr))) { literalExpr.setId(child.getId()); expr.setChild(i, literalExpr); break;