jiwen624 commented on PR #18478:
URL: https://github.com/apache/iceberg/pull/18478#issuecomment-6388153260
> I reproduced the bug from #18479 independently and wrote a separate test
for it before seeing this PR: Projections.inclusive on identity(timestamp_ns)
with Expressions.in("ts", v1, v2), then Binder.bind on the partition type, with
a 2026 value pair and a near-epoch pair.
>
> On main both cases fail (ArithmeticException: long overflow for the 2026
pair, and the bound values come out multiplied by 1000 for the near-epoch pair,
e.g. [1, 86400000000001] becomes [1000, 86400000000001000]). With this PR's two
commits applied
([12a4ade](https://github.com/apache/iceberg/commit/12a4ade20467bb2d85ab9b906696748a690672b3)
and
[b915c9f](https://github.com/apache/iceberg/commit/b915c9f90dc3ac04ddbc86a5462a466cffbecc43),
JDK 21), both pass, and so do the 12 tests in TestProjection.
>
> I also ran an Evaluator on the projected expressions with a value that is
not in the set: the inclusive IN projection returns false for it, and the
strict NOT IN projection returns true.
>
> I haven't looked at timestamptz_ns or the other transforms yet.
Hi @adarshomrey thank you for the bug repro and verification of the fix! 👍
--
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]