morrySnow commented on code in PR #35584: URL: https://github.com/apache/doris/pull/35584#discussion_r1618263930
########## fe/fe-core/src/main/java/org/apache/doris/nereids/rules/expression/rules/FoldConstantRule.java: ########## @@ -51,12 +51,15 @@ public List<ExpressionPatternMatcher<? extends Expression>> buildRules() { /** evaluate by visitor */ public static Expression evaluate(Expression expr, ExpressionRewriteContext ctx) { - if (ctx.cascadesContext != null Review Comment: do not change this function. u could do this by modify `org.apache.doris.nereids.rules.expression.rules.FoldConstantRuleOnBE#buildRules`. for example: ```java @Override public List<ExpressionPatternMatcher<? extends Expression>> buildRules() { return ImmutableList.of( root(Expression.class) .whenCtx(ctx -> !ctx.cascadesContext.getConnectContext().getSessionVariable().isDebugSkipFoldConstant()) .whenCtx(FoldConstantRuleOnBE::isEnableFoldByBe) .thenApply(FoldConstantRuleOnBE::foldByBE) ); } ``` and `org.apache.doris.nereids.rules.expression.rules.FoldConstantRuleOnFE#matches` ```java private <E extends Expression> ExpressionPatternMatcher<? extends Expression> matches( Class<E> clazz, BiFunction<E, ExpressionRewriteContext, Expression> visitMethod) { return matchesType(clazz) .whenCtx(ctx -> !ctx.cascadesContext.getConnectContext().getSessionVariable().isDebugSkipFoldConstant()) .whenCtx(NOT_UNDER_AGG_DISTINCT.as()) .thenApply(ctx -> visitMethod.apply(ctx.expr, ctx.rewriteContext)); } ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org