jackylee-ch opened a new pull request, #9810: URL: https://github.com/apache/paimon/pull/9810
### Purpose For `TIMESTAMP(7..9)`, `toTimestampLiteral` computes `ts.getMillisecond() * 1_000_000 + ts.getNanoOfMillisecond()`. A `TIMESTAMP` reaches year 9999, so a literal outside roughly `[1677-09-21, 2262-04-11]` overflows int64: `9999-12-31 00:00:00`, a common open upper bound, becomes `-4852202631933722624` ns — year 1816. A wrapped bound turns `>`/`>=` into a superset the post-scan filter repairs, so only `<`, `<=` and `=` silently lose rows — hence unnoticed. #9675 added the grain checks just above; this extends the same refuse-to-push contract to representability, returning `null` so the caller drops the leaf. ### Tests `VortexPredicateConverterTest#testTimestampNanosOverflowingLiteralNotPushed`. Reverting the fix: ``` expected: <null> but was: <dev.vortex.api.Expression@69c93ca4> ``` Written with Claude Code; verification is mine. -- 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]
