diff --git a/crates/polars-arrow/src/array/fixed_size_list/builder.rs b/crates/polars-arrow/src/array/fixed_size_list/builder.rs index bff2151a6ef8..2be67595803f 100644 --- a/crates/polars-arrow/src/array/fixed_size_list/builder.rs +++ b/crates/polars-arrow/src/array/fixed_size_list/builder.rs @@ -32,7 +32,7 @@ impl StaticArrayBuilder for FixedSizeListArrayBuilder { } fn reserve(&mut self, additional: usize) { - self.inner_builder.reserve(additional); + self.inner_builder.reserve(additional * self.size); self.validity.reserve(additional); } diff --git a/crates/polars-arrow/src/array/fixed_size_list/mutable.rs b/crates/polars-arrow/src/array/fixed_size_list/mutable.rs index 878a3b3d800a..9086e1f6eb26 100644 --- a/crates/polars-arrow/src/array/fixed_size_list/mutable.rs +++ b/crates/polars-arrow/src/array/fixed_size_list/mutable.rs @@ -136,7 +136,7 @@ impl MutableFixedSizeListArray { /// Reserves `additional` slots. pub fn reserve(&mut self, additional: usize) { - self.values.reserve(additional); + self.values.reserve(additional * self.size); if let Some(x) = self.validity.as_mut() { x.reserve(additional) }