wud-if opened a new pull request, #13412:
URL: https://github.com/apache/gluten/pull/13412

   ### What changes are proposed in this pull request?
   
   Fixes #13411
   
   Maps the Flink arithmetic expressions to their velox flinksql 
implementations (companion velox PR bigo-sg/velox#85):
   
   - `RexCallConverterFactory`: `ABS` / `FLOOR` / `CEIL` / `CEILING` / `ROUND` 
entries; a one-operand `"-"` (Calcite emits Flink's unary minus as a 
single-operand `"-"` RexCall) resolves to a `UnaryMinusRexCallConverter` 
against the binary subtract candidates via `isSuitable`.
   - `DecimalPostCastRexCallConverter`: `ROUND` over decimals narrows the 
result scale by the value-dependent second argument, which a velox signature 
cannot express — the plan emits a same-typed round call wrapped in a cast to 
Flink's inferred round type.
   - `DecimalArithmeticOperatorRexCallConverters` gains a two-operand guard so 
the single-operand `"-"` always resolves to `negate`.
   - CI routing: `flink.yml` / `Flink.md` temporarily clone the velox4j pin 
branch carrying the velox arithmetic branch; reverted once the velox PR merges.
   
   ### How was this patch tested?
   
   - Factory-level tests: unary-minus arbitration vs decimal subtract, `ROUND` 
post-cast shape, `FLOOR` default mapping.
   - Execution-level tests (embedded gluten stack): round / abs / unary-minus / 
floor-ceil over double and decimal, matching native Flink through 
changelog-exact comparisons of the GFV dual-run harness (11-case suite).
   


-- 
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]

Reply via email to