JingsongLi opened a new pull request, #732: URL: https://github.com/apache/paimon-rust/pull/732
## What changed - add `ARRAY_CONTAINS`, `ARRAYS_OVERLAP`, and `ARRAY_CONTAINS_ALL` to the predicate model and REST deserialization - evaluate array predicates exactly over Arrow list arrays, including null/empty arrays, duplicate literals, decimals, NaNs, and signed zero - push DataFusion `array_has`, `array_has_any` / `arrays_overlap`, and `array_has_all`, retaining DataFusion residuals where semantics differ - prune all-null array files through predicate stats - extract `TIME` values from Arrow and decode Java-compatible LZ4/LZO bitmap blocks ## Why These are reusable predicate and read-compatibility capabilities independent of the MultiValue global index implementation in #731. Moving them into a prerequisite PR keeps #731 focused on the writer, metadata, scanner, and procedure wiring. The exact array residual follows Java Paimon semantics: all NaN payloads compare equal, signed zero remains distinct, decimal values compare across scales, NULL arrays do not match, and an empty `ARRAY_CONTAINS_ALL` literal matches only non-null arrays. ## Validation - `cargo test -p paimon --all-targets --features fulltext,vortex --no-fail-fast` - `cargo test -p paimon-datafusion --lib filter_pushdown::tests --no-fail-fast` - `cargo clippy --workspace --all-targets --features fulltext,vortex -- -D warnings` All checks pass locally. -- 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]
