From f95666b1671b2308763f5155d72e3a9474225375 Mon Sep 17 00:00:00 2001 From: Adam Gutglick Date: Wed, 1 Apr 2026 22:11:55 +0100 Subject: [PATCH 1/3] Reduce Miri runtime even more --- arrow-buffer/src/buffer/boolean.rs | 7 ++++++- arrow-ord/src/sort.rs | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/arrow-buffer/src/buffer/boolean.rs b/arrow-buffer/src/buffer/boolean.rs index 420bbf59f3be..e82fffd0638c 100644 --- a/arrow-buffer/src/buffer/boolean.rs +++ b/arrow-buffer/src/buffer/boolean.rs @@ -1013,7 +1013,12 @@ mod tests { let input_buffer_left = BooleanBuffer::from(&input_bools_left[..]); let input_buffer_right = BooleanBuffer::from(&input_bools_right[..]); - for left_offset in 0..200 { + #[cfg(miri)] + let left_offsets = [0, 1, 7, 8, 63, 64, 65]; + #[cfg(not(miri))] + let left_offsets = 0..200; + + for left_offset in left_offsets { for right_offset in [0, 4, 5, 17, 33, 24, 45, 64, 65, 100, 200] { for len_offset in [0, 1, 44, 100, 256, 300, 512] { let len = 1024 - len_offset - left_offset.max(right_offset); // ensure we don't go out of bounds diff --git a/arrow-ord/src/sort.rs b/arrow-ord/src/sort.rs index 773d9cf12e13..27260259e3f2 100644 --- a/arrow-ord/src/sort.rs +++ b/arrow-ord/src/sort.rs @@ -4892,6 +4892,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn fuzz_partition_validity() { let mut rng = StdRng::seed_from_u64(0xF00D_CAFE); for _ in 0..1_000 { @@ -5100,6 +5101,7 @@ mod tests { // Fuzz testing: generate random UTF-8 strings and verify sort correctness #[test] + #[cfg_attr(miri, ignore)] fn test_fuzz_random_strings() { let mut rng = StdRng::seed_from_u64(42); // Fixed seed for reproducibility From c01e46536ef3182946b082f297d735b28c869e91 Mon Sep 17 00:00:00 2001 From: Adam Gutglick Date: Wed, 3 Jun 2026 10:30:08 +0100 Subject: [PATCH 2/3] Update arrow-ord/src/sort.rs Co-authored-by: Jeffrey Vo --- arrow-ord/src/sort.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arrow-ord/src/sort.rs b/arrow-ord/src/sort.rs index 27260259e3f2..e9784b207cf7 100644 --- a/arrow-ord/src/sort.rs +++ b/arrow-ord/src/sort.rs @@ -5101,7 +5101,7 @@ mod tests { // Fuzz testing: generate random UTF-8 strings and verify sort correctness #[test] - #[cfg_attr(miri, ignore)] + #[cfg_attr(miri, ignore)] // Takes too long fn test_fuzz_random_strings() { let mut rng = StdRng::seed_from_u64(42); // Fixed seed for reproducibility From c56f2af099a313dcfb8399e44d75f9d1b03ae4cc Mon Sep 17 00:00:00 2001 From: Adam Gutglick Date: Wed, 3 Jun 2026 10:30:31 +0100 Subject: [PATCH 3/3] Apply suggestions from code review Co-authored-by: Jeffrey Vo --- arrow-buffer/src/buffer/boolean.rs | 2 +- arrow-ord/src/sort.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arrow-buffer/src/buffer/boolean.rs b/arrow-buffer/src/buffer/boolean.rs index 2b9ae8adae24..52f1e3fbb510 100644 --- a/arrow-buffer/src/buffer/boolean.rs +++ b/arrow-buffer/src/buffer/boolean.rs @@ -1073,7 +1073,7 @@ mod tests { let input_buffer_left = BooleanBuffer::from(&input_bools_left[..]); let input_buffer_right = BooleanBuffer::from(&input_bools_right[..]); - #[cfg(miri)] + #[cfg(miri)] // Takes too long otherwise let left_offsets = [0, 1, 7, 8, 63, 64, 65]; #[cfg(not(miri))] let left_offsets = 0..200; diff --git a/arrow-ord/src/sort.rs b/arrow-ord/src/sort.rs index e9784b207cf7..114ca05bb7eb 100644 --- a/arrow-ord/src/sort.rs +++ b/arrow-ord/src/sort.rs @@ -4892,7 +4892,7 @@ mod tests { } #[test] - #[cfg_attr(miri, ignore)] + #[cfg_attr(miri, ignore)] // Takes too long fn fuzz_partition_validity() { let mut rng = StdRng::seed_from_u64(0xF00D_CAFE); for _ in 0..1_000 {