quinnj opened a new pull request, #612:
URL: https://github.com/apache/arrow-julia/pull/612

   `variadicBufferCounts` is an Int64 vector in the Arrow schema, but the 
reader uses Int32 entries. With multiple view columns, the second count reads 
the high half of the first count, leaving later columns without their payload 
buffers.
   
   Read Int64 counts. The reported Polars 1.21 file also places them at a 
four-byte-aligned address, so the shared FlatBuffers array constructor now 
copies unaligned data using checked byte spans and Base reinterpretation. 
Naturally aligned metadata retains its zero-copy path.
   
   Fixes #590.
   
   Validation: reproduced the original 100-row Polars failure; all original 
values now match. Two small independent PyArrow/Polars fixtures cover counts 
`[1,2,0,1]`, text/binary/nested views, following primitive columns, borrowing, 
and truncated/oversized unaligned input. All 22 focused checks pass, including 
with optional bounds checks disabled. Full two-thread suites pass on Julia 
1.9.4 and 1.12.7 (66,217 checks each). Formatter and diff checks pass.
   
   This is a focused 2.x fix. The rewrite in #609 already uses Int64 counts but 
has a different reader; no broader rewrite validation is claimed. The patch 
applies cleanly alongside #611. Existing aligned malformed-IPC handling is 
unchanged.
   
   Co-authored by Codex
   


-- 
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]

Reply via email to