Commits


Eric Erhardt authored and Wes McKinney committed 6720c987110
ARROW-4503: [C#] Eliminate allocations in ArrowStreamReader when reading from a Stream When reading `RecordBatch` instances from a .NET `Stream` using the `ArrowStreamReader` class, it is currently allocating and copying memory 3 times for the data. I've changed it to take a MemoryPool in the constructor, `ArrowStreamReader` will allocate from the pool a single time for each `RecordBatch` it reads, copy from the `Stream` into that memory once, and then use it in the returned `RecordBatch`. I've also fixed the comments from #3736 that were deemed to be better fixed with this change. Author: Eric Erhardt <eric.erhardt@microsoft.com> Closes #3925 from eerhardt/ArrowReaderSync and squashes the following commits: b48d41be <Eric Erhardt> Use theories in a couple of tests. 23497e20 <Eric Erhardt> ArrowBuffer.Builder should only allocate its current Length, not its current Capacity. 37a9b187 <Eric Erhardt> Fix up the benchmarks. 0b0d9d48 <Eric Erhardt> PR feedback bd41384f <Eric Erhardt> Respond to initial feedback. 63e33879 <Eric Erhardt> Eliminate allocations in ArrowStreamReader when reading from a Stream