wud-if commented on code in PR #13412:
URL: https://github.com/apache/gluten/pull/13412#discussion_r4536354585
##########
gluten-flink/planner/src/main/java/org/apache/gluten/rexnode/functions/RexCallConverterFactory.java:
##########
@@ -119,6 +120,14 @@ public class RexCallConverterFactory {
// substring returns an empty string. Start semantics (0 counts as 1,
// negative counts from the end) already match Flink.
Map.entry("SUBSTRING", Arrays.asList(() -> new
SubstringRexCallConverter())),
+ // Offload targets implemented in velox's flinksql namespace. ABS/
+ // FLOOR/CEIL/ROUND arrive upper-cased from the operator table;
+ // unary minus arrives as a one-operand "-" (see above).
+ Map.entry("ABS", Arrays.asList(() -> new
DefaultRexCallConverter("abs"))),
+ Map.entry("FLOOR", Arrays.asList(() -> new
NumericOnlyRexCallConverter("floor"))),
+ Map.entry("CEIL", Arrays.asList(() -> new
NumericOnlyRexCallConverter("ceil"))),
+ Map.entry("CEILING", Arrays.asList(() -> new
DefaultRexCallConverter("ceil"))),
Review Comment:
Thanks for the review! Dropped in e158dfa. Verified your observation against
the parser: Calcite's grammar routes <CEIL> | <CEILING> through the same
SqlStdOperatorTable.floorCeil(false) → CEIL operator, and Flink's
BuiltInFunctionDefinitions only registers floor/ceil, so the RexCall operator
name is always CEIL and the CEILING entry could never match. testCeilingAlias
exercises the alias end-to-end through the CEIL entry and stays green.
--
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]