morrySnow commented on PR #64366: URL: https://github.com/apache/doris/pull/64366#issuecomment-4874871390
已按反馈调整: 1. `FoldConstantRuleOnFE.visitBoundFunction` 不再通过 `evaluateStatementTimeFunction` 做 if/else 分发,已移除该函数和 `isStatementTimeFunction`。 2. `current_date/current_time/utc_date/utc_time/utc_timestamp` 以及无参 `unix_timestamp` 现在和 `now` 一样通过各自 visitor 方法使用 statement start time 折叠;带参数的 `unix_timestamp` 仍回到通用 `BoundFunction` 常量求值路径。 3. `DateTimeAcquire` 中这些 statement-time 函数的 `@ExecFunction` wall-clock 实现已移除,避免 fallback evaluation 绕过 statement start time。保留未标注 `@ExecFunction` 的 `now()`,因为它仍被 MTMV 代码直接调用,不参与表达式求值注册。 4. 测试同步改为验证 `TimeUtils.timeZoneAliasMap` 支持的别名(如 `PST`)会正常折叠。 验证:`git diff --check`、`mvn checkstyle:check -pl fe-core` 已通过。`./run-fe-ut.sh --run org.apache.doris.nereids.rules.expression.FoldConstantTest` 尝试执行,但在进入 fe-core 前被现有 `fe-grpc` 生成代码编译问题阻塞:`ColumnDataFile.java` 找不到 `OlapCommon.ColumnMessage/ColumnMessageOrBuilder`。 -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
