viirya opened a new issue, #11363: URL: https://github.com/apache/arrow-rs/issues/11363
### Describe the bug FixedSizeList validation for non-nullable items ignores the parent offset when comparing child validity with expanded parent validity. It can reject valid arrays and accept arrays with visible nulls in non-nullable items. When the parent has no null buffer, validation checks the entire child, so nulls outside the parent-visible range can also cause an incorrect rejection. The child length check likewise omits the parent offset. ### To Reproduce Construct an ArrayData with: - Type: FixedSizeList of non-nullable Int32 items, list size 2 - Parent offset: 1 - Parent length: 2 - Child values: `[0, 1, null, null, 4, 5]` The visible child range is indices 2 through 5. 1. With parent validity `[false, true]`, validation incorrectly rejects the array. Both child nulls are masked by the first visible parent row. 2. With parent validity `[true, false]`, validation incorrectly accepts the array. The first visible parent row is valid but contains null items. Reproduced on commit `8c265f8de4e44a5fdda8aad79ccf890d53c6e601`. ### Expected behavior Validate child nullability only within the parent-visible range, starting at `parent.offset * list_size` and spanning `parent.len * list_size` elements. Accept the first case and reject the second. Child length validation should include the parent offset and reject undersized children before slicing. ### Additional context Fix and regression tests: https://github.com/apache/arrow-rs/pull/11362 -- 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]
