sdd opened a new issue, #1044: URL: https://github.com/apache/iceberg-rust/issues/1044
### Apache Iceberg Rust version None ### Describe the bug Consider the following single-column table of nullable strings: ``` a ----- null "foo" "bar" ``` When querying using the predicate `a IS NULL OR a = "foo"`, You'd expect the result to be `null` and `"foo"`. Similarly, when querying using the predicate `a IS NOT NULL AND a != "foo"`, You'd expect the result to be just `"foo"`. Right now, in the first instance we get the result `["foo"]`, and in the second we get `["foo", "bar"]`. The issue is caused by Iceberg `AND` and `OR` predicates being mapped to `arrow_arith`'s `and` and `or` predicates. I think we should be transforming Iceberg `AND` and `OR` predicates into `and_kleene` and `or_kleene`. ### To Reproduce _No response_ ### Expected behavior _No response_ ### Willingness to contribute - [x] I can contribute a fix for this bug independently - [ ] I would be willing to contribute a fix for this bug with guidance from the Iceberg community - [ ] I cannot contribute a fix for this bug at this time -- 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: issues-unsubscr...@iceberg.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org