Fix non-seekable I/O support for Arrow.Stream #584
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Arrow.Streamnot working with non-seekable I/O e.g. FIFOs and sockets #580 - Arrow.Stream fails when reading from non-seekable I/O (FIFOs, pipes, sockets)tobytes(io::IOStream)to detect non-seekable streams and fall back toBase.read()instead ofMmap.mmap()Base.write(io::IO, msg::Message, ...)to handle non-seekable outputs by skipping block position tracking (only needed for file format footer)Test plan
open(\cat file.arrow`) do io; Arrow.Table(io); end`🤖 Generated with Claude Code