DanielLeens commented on issue #12571: URL: https://github.com/apache/seatunnel/issues/12571#issuecomment-5931141220
Classification: E / Transform-V2 integral CAST compatibility. The matrix is sufficient to proceed. I rechecked current `dev` at `d7e9931bea0976547e9730675e7019bbef88ad83`: `CastFunction` presently admits `BIGINT -> INT`, and `SystemFunction.castAs` takes the numeric input through `Number.intValue()` while the string path uses `Integer.parseInt()`. Your enumeration correctly shows that `BIGINT -> INT` is the only numeric narrowing reachable by the current planner. Please open one focused PR against `dev`. Keep planner acceptance unchanged in this first change; at the shared integral cast boundary, make out-of-range numeric input fail so `TRY_CAST` returns null. Include the complete MIN-1 / MIN / MAX / MAX+1 matrix for TINYINT, SMALLINT, and INT, the exact `BIGINT -> INT` boundary cases, and the widening and identity controls you listed. Keep FLOAT and `Infinity` out of this PR. Because this changes the behavior of jobs that relied on wraparound, document the compatibility impact in both language references and the incompatible-changes record. Link the PR here once opened; it should not be treated as fixed until the tests and review are complete. -- 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]
