hi John,

I'm not sure I follow. The EOS you're referring to is part of the
streaming format. It's designed to be readable using an InputStream
interface that does not support seeking at all. You can see the core
logic where messages are popped off the InputStream here

https://github.com/apache/arrow/blob/6f80ea4928f0d26ca175002f2e9f511962c8b012/cpp/src/arrow/ipc/message.cc#L281

If the end of the byte stream is reached, or EOS (0) is encountered,
then the stream reader stops iteration.

- Wes

On Tue, May 21, 2019 at 4:34 PM John Muehlhausen <j...@jgm.org> wrote:
>
> https://arrow.apache.org/docs/format/IPC.html#file-format
>
> <EOS [optional]: int32>
>
> If this stream marker is optional in the file format, doesn't this prevent
> someone from reading the file without being able to seek() it, e.g. if it
> is "piped in" to a program?  Or otherwise they'll have to stream in the
> entire thing before they can start parsing?
>
> Any reason it can't be mandatory for a File?
>
> -John

Reply via email to