diff --git a/.github/workflows/miri.sh b/.github/workflows/miri.sh index 56da5c5c5d3..3323bd0996b 100755 --- a/.github/workflows/miri.sh +++ b/.github/workflows/miri.sh @@ -14,4 +14,7 @@ cargo miri setup cargo clean echo "Starting Arrow MIRI run..." -cargo miri test -p arrow -- --skip csv --skip ipc --skip json +cargo miri test -p arrow-buffer +cargo miri test -p arrow-data --features ffi +cargo miri test -p arrow-schema --features ffi +cargo miri test -p arrow-array diff --git a/arrow-array/src/array/boolean_array.rs b/arrow-array/src/array/boolean_array.rs index 428a721ddb6..8d1296c662f 100644 --- a/arrow-array/src/array/boolean_array.rs +++ b/arrow-array/src/array/boolean_array.rs @@ -542,6 +542,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] // Takes too long fn test_true_false_count() { let mut rng = thread_rng(); diff --git a/arrow-array/src/array/run_array.rs b/arrow-array/src/array/run_array.rs index 9dba3ddab6a..126aefde94f 100644 --- a/arrow-array/src/array/run_array.rs +++ b/arrow-array/src/array/run_array.rs @@ -881,6 +881,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] // Takes too long fn test_get_physical_indices() { // Test for logical lengths starting from 10 to 250 increasing by 10 for logical_len in (0..250).step_by(10) { @@ -917,6 +918,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] // Takes too long fn test_get_physical_indices_sliced() { let total_len = 80; let input_array = build_input_array(total_len); diff --git a/arrow-array/src/run_iterator.rs b/arrow-array/src/run_iterator.rs index fbf173b1dbe..44cb59ac7fc 100644 --- a/arrow-array/src/run_iterator.rs +++ b/arrow-array/src/run_iterator.rs @@ -349,6 +349,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] // Takes too long fn test_sliced_run_array_iterator() { let total_len = 80; let input_array = build_input_array(total_len); diff --git a/arrow-buffer/src/bigint.rs b/arrow-buffer/src/bigint.rs index 0d404df169e..812ebbf14ba 100644 --- a/arrow-buffer/src/bigint.rs +++ b/arrow-buffer/src/bigint.rs @@ -549,7 +549,7 @@ impl ToPrimitive for i256 { } } -#[cfg(test)] +#[cfg(all(test, not(miri)))] mod tests { use super::*; use num::{BigInt, FromPrimitive, Signed, ToPrimitive};