Function compact_buffers

Source
pub fn compact_buffers(array: &VarBinViewArray) -> VortexResult<VarBinViewArray>
Expand description

Returns a compacted copy of the input array, where all wasted space has been cleaned up. This operation can be very expensive, in the worst cast copying all existing string data into a new allocation.

After slicing/taking operations VarBinViewArrays can continue to hold references to buffers that are no longer visible. We detect when there is wasted space in any of the buffers, and if so, will aggressively compact all visile outlined string data into a single new buffer.