Awesome06 opened a new pull request, #27245: URL: https://github.com/apache/datafusion/pull/27245
> [!IMPORTANT] > > **Fork CI setup:** For pull requests from a fork to `main`, enable workflows in your fork's **Actions** tab before you push. > See the [fork CI setup guide](https://datafusion.apache.org/contributor-guide/#pull-requests-from-forks). ## Which issue does this PR close? Part of #27082. ## Rationale for this change The `union_fuzz` test in `key_range_bitmap.rs` previously ran as a standard `#[test]` using environment variables (`DATAFUSION_KEY_RANGE_UNION_FUZZ_ITERATIONS` and `DATAFUSION_KEY_RANGE_UNION_FUZZ_SEED`) without a configurable budget or centralized execution. Migrating this test to the `FuzzTest` framework from #27048 makes it reproducible via seed reporting, integrates it with the unified runner in `datafusion-fuzz`, and aligns it with project fuzzing conventions. ## What changes are included in this PR? - **`datafusion-physical-plan`**: - Expose `KeyRangePart` and `KeyRangeBitmap::union` with `pub` visibility so `datafusion-fuzz` can construct parts and invoke the union method. - Expose `offset(&self)`, `span(&self)`, `shift(&self)`, and `bits(&self)` getter accessors on `KeyRangeBitmap`. - Remove legacy `union_fuzz` and `run_union_scenario` test functions from `key_range_bitmap.rs`. - **`datafusion-fuzz`**: - Implement `KeyRangeBitmapFuzzer` in `tests/suites/key_range_bitmap.rs` implementing the `FuzzTest` trait. - Register `KeyRangeBitmapFuzzer` in `tests/fuzz.rs` and `tests/suites/mod.rs`. ## What is the testing strategy for this PR? - Ran `datafusion-physical-plan` unit tests: `cargo test -p datafusion-physical-plan --lib -- joins::key_range_bitmap` (4 passed) - Ran the unified fuzz test suite: `cargo test -p datafusion-fuzz --test fuzz --features extended_tests` (256 cases passed) - Formatting and lint checks: - `cargo fmt --all -- --check` - `cargo clippy --all-targets --workspace -- -D warnings` ## Are there any user-facing changes? No user-facing changes. -- 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]
