Skip to content

Commit 8d9ec68

Browse files
blagininclaude
andauthored
ci: narrow macOS test scope to datafusion-ffi, run benchmarks on amd64 (apache#22048)
Follow up apache#21941 The macos-aarch64 job took ~22 min - 68% compile, 25% test. An audit of macos-only PR failures over Mar-May 2026 (1000 failed PR runs, 30 with macOS as the sole signal) found that nearly all the unique signal was either: - flaky sqllogictest metrics (~67%, e.g. push_down_filter / explain_analyze .slt files with platform-dependent scan_efficiency_ratio numbers), - real bugs in datafusion-benchmarks (which amd64 was excluding), or - one genuinely macOS-specific FFI cdylib loading bug (datafusion/ffi/src/tests/utils.rs path resolution). So the only thing macOS uniquely catches is FFI dylib loading. Scope the macOS job down to `cargo test -p datafusion-ffi --features integration-tests` and let amd64 pick up the datafusion-benchmarks coverage that was being dropped by the linux-test --exclude list. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 8a2acd0 commit 8d9ec68

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

.github/workflows/rust.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,6 @@ jobs:
298298
--profile ci \
299299
--exclude datafusion-examples \
300300
--exclude ffi_example_table_provider \
301-
--exclude datafusion-benchmarks \
302301
--exclude datafusion-cli \
303302
--workspace \
304303
--lib \
@@ -557,6 +556,11 @@ jobs:
557556
# export PATH=$PATH:$HOME/d/protoc/bin
558557
# cargo test --lib --tests --bins --features avro,json,backtrace
559558

559+
# macOS scope is narrowed to `datafusion-ffi`: the only bug class amd64
560+
# cannot reproduce is FFI cdylib loading (`.dylib` vs `.so` resolution in
561+
# datafusion/ffi/src/tests/utils.rs). All other macos-only failures
562+
# historically came from datafusion-benchmarks (now covered on amd64) or
563+
# flaky sqllogictest metrics.
560564
macos-aarch64:
561565
name: cargo test (macos-aarch64)
562566
runs-on: macos-15
@@ -567,9 +571,9 @@ jobs:
567571
fetch-depth: 1
568572
- name: Setup Rust toolchain
569573
uses: ./.github/actions/setup-macos-aarch64-builder
570-
- name: Run tests (excluding doctests)
574+
- name: Run datafusion-ffi tests
571575
shell: bash
572-
run: cargo test --profile ci --exclude datafusion-cli --workspace --lib --tests --bins --features avro,json,backtrace,integration-tests,substrait
576+
run: cargo test --profile ci -p datafusion-ffi --lib --tests --features integration-tests
573577

574578
vendor:
575579
name: Verify Vendored Code

0 commit comments

Comments
 (0)