@@ -24,10 +24,7 @@ impl SliceReduce for Patched {
2424 let chunk_start = ( range. start + array. offset ) / 1024 ;
2525 let chunk_stop = ( range. end + array. offset ) . div_ceil ( 1024 ) ;
2626
27- // Slice the inner to chunk boundaries
28- let inner_start = chunk_start * 1024 ;
29- let inner_stop = ( chunk_stop * 1024 ) . min ( array. inner . len ( ) ) ;
30- let inner = array. inner . slice ( inner_start..inner_stop) ?;
27+ let inner = array. inner . slice ( range. start ..range. end ) ?;
3128
3229 // Slice to only maintain offsets to the sliced chunks
3330 let sliced_lane_offsets = array
@@ -78,20 +75,19 @@ mod tests {
7875 let values = buffer ! [ 0u16 ; 512 ] . into_array ( ) ;
7976 let patch_indices = buffer ! [ 1u32 , 8 , 30 ] . into_array ( ) ;
8077 let patch_values = buffer ! [ u16 :: MAX ; 3 ] . into_array ( ) ;
81- let patches = Patches :: new ( 512 , 0 , patch_indices, patch_values, None ) . unwrap ( ) ;
78+ let patches = Patches :: new ( 512 , 0 , patch_indices, patch_values, None ) ? ;
8279
8380 let mut ctx = ExecutionCtx :: new ( LEGACY_SESSION . clone ( ) ) ;
8481
85- let patched_array =
86- PatchedArray :: from_array_and_patches ( values, & patches, & mut ctx) . unwrap ( ) ;
82+ let patched_array = PatchedArray :: from_array_and_patches ( values, & patches, & mut ctx) ?;
8783
8884 let sliced = patched_array. slice ( 1 ..10 ) ?;
8985
9086 insta:: assert_snapshot!(
9187 sliced. display_tree_encodings_only( ) ,
9288 @r#"
9389 root: vortex.patched(u16, len=9)
94- inner: vortex.primitive(u16, len=512 )
90+ inner: vortex.primitive(u16, len=9 )
9591 patch_indices: vortex.primitive(u16, len=3)
9692 patch_values: vortex.primitive(u16, len=3)
9793 "# ) ;
0 commit comments