From 78721bc1a467177679ad6196b994759cf4d73377 Mon Sep 17 00:00:00 2001 From: Andrew Lamb Date: Wed, 22 Dec 2021 11:34:59 -0500 Subject: [PATCH] BooleanBufferBuilder correct buffer length (#1051) (#1052) (#1080) Co-authored-by: Raphael Taylor-Davies <1781103+tustvold@users.noreply.github.com> --- arrow/src/array/builder.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arrow/src/array/builder.rs b/arrow/src/array/builder.rs index af6f3c39a71..94c05c1771d 100644 --- a/arrow/src/array/builder.rs +++ b/arrow/src/array/builder.rs @@ -310,7 +310,7 @@ impl BooleanBufferBuilder { #[inline] pub fn new(capacity: usize) -> Self { let byte_capacity = bit_util::ceil(capacity, 8); - let buffer = MutableBuffer::from_len_zeroed(byte_capacity); + let buffer = MutableBuffer::new(byte_capacity); Self { buffer, len: 0 } } @@ -2713,7 +2713,8 @@ mod tests { let buffer = b.finish(); assert_eq!(1, buffer.len()); - let mut b = BooleanBufferBuilder::new(4); + // Overallocate capacity + let mut b = BooleanBufferBuilder::new(8); b.append_slice(&[false, true, false, true]); assert_eq!(4, b.len()); assert_eq!(512, b.capacity());