JingsongLi commented on code in PR #9423:
URL: https://github.com/apache/paimon/pull/9423#discussion_r4056187058
##########
paimon-common/src/main/java/org/apache/paimon/predicate/PredicateBuilder.java:
##########
@@ -286,6 +286,10 @@ public Predicate notIn(int idx, List<Object> literals) {
return in(idx, literals).negate().get();
}
+ public Predicate notIn(Transform transform, List<Object> literals) {
+ return in(transform, literals).negate().get();
Review Comment:
[P2] Preserve empty-set semantics for Transform NOT IN
This new overload inherits an empty-list failure from in(Transform, ...):
unlike in(int, ...), that helper does not special-case empty input and calls
or(empty), which throws. Therefore notIn(transform, emptyList()) raises
IllegalArgumentException while notIn(idx, emptyList()) returns a valid NotIn
predicate. Please align the empty-set handling, preferably in the Transform IN
helper, and add an empty-list regression test for this overload.
--
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]