jackylee-ch opened a new pull request, #792: URL: https://github.com/apache/paimon-rust/pull/792
`-0.0` and `+0.0` are separate dictionary keys — the sign bit survives serialization and the comparator orders them apart — but equality consults only the literal's own key. On a file holding `-0.0`, `WHERE d = 0.0` gets an empty candidate set, and that is `Some(empty)` rather than a decline, so every row is pruned before the residual filter runs. `In`, the array operators and the file-level min/max check share the flaw. **Not a parity fix**: Java's `BitmapIndexReader.equal` has the same gap. The argument is in-repo consistency — the local bitmap file index already unions the two zeros (`file_index::bitmap`'s `equivalent_zero`), pinned by a Java-golden test asserting `Eq(+0.0)` and `Eq(-0.0)` return the identical rows. Happy to file the Java issue if you would rather keep the two in step. -- 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]
