You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "ump45nose (via GitHub)" <gi...@apache.org> on 2026/10/18 05:10:19 UTC
[PR] fix(arrow-data): check run ends against the run-end encoded array's offset and length [arrow-rs]
ump45nose opened a new pull request, #11662:
URL: https://github.com/apache/arrow-rs/pull/11662
# Which issue does this PR close?
- Closes #11587.
# Rationale for this change
`ArrayData` validation accepted run-end encoded data whose `offset + len` was past its last run end, so reading those rows indexed past the end of the values. `check_run_ends` already has the right check, but it runs on the run ends child, so it compared the last run end with the child's length (the number of runs), which can never fail.
# What changes are included in this PR?
`check_run_ends` now takes the run-end encoded array's `len` and `offset` and checks the last run end against those.
# Are these changes tested?
Yes. `test_validate_run_ends_cover_logical_offset_and_len` in `arrow-data/src/data.rs` builds run ends `[2, 3]` with a few offset/length combinations: ones that fit build fine, and `len` 5, or offset 2 with `len` 2, now return the "offset + length" error. It fails without the fix.
# Are there any significant user-facing changes?
`ArrayData` validation now rejects run-end encoded data whose rows run past the last run end. That data was already invalid.
AI disclosure: I used an AI coding assistant to write the fix, the test and this description, and I reviewed all of it.
--
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: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(arrow-data): check run ends against the run-end encoded array's offset and length [arrow-rs]
Posted by "ump45nose (via GitHub)" <gi...@apache.org>.
ump45nose closed pull request #11662: fix(arrow-data): check run ends against the run-end encoded array's offset and length
URL: https://github.com/apache/arrow-rs/pull/11662
--
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: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(arrow-data): check run ends against the run-end encoded array's offset and length [arrow-rs]
Posted by "Jefffrey (via GitHub)" <gi...@apache.org>.
Jefffrey commented on PR #11662:
URL: https://github.com/apache/arrow-rs/pull/11662#issuecomment-6248275153
i actually had a local fix for this, which includes an extra case where the parent length is 0; raised as PR now
- https://github.com/apache/arrow-rs/pull/11668
--
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: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(arrow-data): check run ends against the run-end encoded array's offset and length [arrow-rs]
Posted by "ump45nose (via GitHub)" <gi...@apache.org>.
ump45nose commented on PR #11662:
URL: https://github.com/apache/arrow-rs/pull/11662#issuecomment-6252478807
Thanks @Jefffrey, your version covers the zero parent length case too, so I'll close this in favor of #11668.
--
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: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org