fallintoplace opened a new pull request, #991: URL: https://github.com/apache/arrow-go/pull/991
### Rationale for this change Once an IPC message has started, a missing length, metadata block, or body is a truncated frame rather than a clean end of stream. `io.ReadFull` returns `io.EOF` when none of the requested bytes are available, and the IPC stream reader treats errors matching `io.EOF` as normal completion. As a result, some truncated messages were silently accepted. ### What changes are included in this PR? Convert `io.EOF` to `io.ErrUnexpectedEOF` when a required message component is missing after framing has begun. EOF before the next continuation indicator and explicit EOS markers keep their existing behavior. Add coverage for truncation at the message length, metadata, and body, plus a stream-level regression test that verifies the error reaches `Reader.Err()`. ### Are these changes tested? Yes. `go test ./arrow/ipc` and focused race tests pass. ### Are there any user-facing changes? Malformed IPC streams now report an unexpected EOF instead of appearing to end successfully. Valid streams are unchanged. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
