blaginin opened a new pull request, #22047: URL: https://github.com/apache/datafusion/pull/22047
## Which issue does this PR close? - Closes #. ## Rationale for this change The `cargo test (macos-aarch64)` job is the slowest job in `Rust` CI (~22 min vs 1–6 min for everything else; ~68% of that is compile, ~25% is test execution). I audited 1000 failed PR runs over Mar–May 2026 to figure out what unique signal it actually provides. **Findings (full breakdown of the 30 PR runs where macOS was the *sole* failing job):** | Bucket | Count | Notes | |---|---|---| | `explain_analyze.slt` | 12 | flaky — platform-dependent scan_efficiency_ratio / pushdown_rows metrics | | `push_down_filter_*.slt` | 8 | same — flaky metrics | | `benchmark_runner::cli::tests` | 3 | real bugs, but live in `datafusion-benchmarks`, which amd64 was `--exclude`ing | | `statistics::tpcds_*` | 2 | same PR, also in `datafusion-benchmarks` | | `tests::test_ffi_udaf` etc. | 1 | real, **macOS-specific** — FFI cdylib loading (`.dylib` vs `.so` resolution in `datafusion/ffi/src/tests/utils.rs`) | | Build / network / cancellation | 4 | environment noise | So in 2 months on >1000 failed PR runs, exactly **one** real bug was caught only by macOS that amd64 couldn't have caught with the right scope. Everything else was either flake noise or `datafusion-benchmarks` coverage that amd64 was skipping. ## What changes are included in this PR? 1. **`linux-test` (amd64)**: drop `--exclude datafusion-benchmarks`. amd64 now runs benchmark crate tests, which historically only macOS was running. 2. **`macos-aarch64`**: scope down to `cargo test -p datafusion-ffi --features integration-tests`. This is the only place where the platform itself matters (cdylib path resolution). Net effect: - macOS job drops from ~22 min to an estimated ~10–13 min on a cold cache (compile of the `datafusion-ffi` dependency tree dominates; 9 test binaries run in <1 s combined). - `datafusion-benchmarks` is now covered on the fast 16-CPU amd64 runner instead of the 3-core macos-15 runner. - Required-checks list (`.asf.yaml`) is unchanged — same job names. ## Are these changes tested? Verified locally that `cargo test --profile ci -p datafusion-ffi --lib --tests --features integration-tests` builds all 9 FFI test binaries and they pass. CI on this PR will exercise both the new amd64 scope and the new macOS scope. ## Are there any user-facing changes? No. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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]
