apache / apache/arrow

[C++][Parquet] Make DELTA_BYTE_ARRAY value reconstruction storage-agnostic

Open
#50,822 0 comments 0 reactions 1 assignee Claimed by @marcin-krystianc View on GitHub
Component: C++ Type: enhancement
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
88

Description

### Describe the enhancement requested

Follow-up to #50335, which added `FLBADecoder::Decode(uint8_t*, int)` - a dense decode
path that writes FIXED_LEN_BYTE_ARRAY values contiguously into a caller-provided buffer.

`DeltaByteArrayFLBADecoder::Decode(uint8_t*, int)` currently reaches that dense output
through `DeltaByteArrayDecoderImpl::GetInternal`, which only supports `ByteArray` output.
So it decodes into a temporary `std::vector`, then copies each value out and
discards the vector.

`DeltaByteArrayDecoderImpl::DecodeArrow` allocates a similar intermediate `ByteArray`
buffer, so it may benefit from the same refactor.

### Component(s)

C++

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.