apache / orc

Apache ORC - the smallest, fastest columnar storage for Hadoop workloads
https://orc.apache.org/
Apache License 2.0
665 stars 477 forks source link

ORC-1365: [C++] Use BlockBuffer to replace dataBuffer of rawInputBuffer #1916

Closed luffy-zh closed 2 months ago

luffy-zh commented 2 months ago

What changes were proposed in this pull request?

The purpose of this PR is to replace the DataBuffer with BlockBuffer. This way the orc compressor can start with a small initial size and grow automatically as needed.

Why are the changes needed?

This patch uses BlockBuffer to replace the DataBuffer of class CompressionStream in order to solve the issue.

How was this patch tested?

The UTs in TestBufferedOutputStream.cc and TestCompression.cc can cover this patch.

ffacs commented 2 months ago

I have no extra comments other than removing the blank line.