-
Notifications
You must be signed in to change notification settings - Fork 4k
Description
When creating a struct array with a primitive child array, it is possible for the child to be non-nullable, while its parent struct array is nullable.
In this scenario, the child array's slots where the parent is null, become invalidated, such that an array with [1, 2, 3] having slot 2 being null, should be interpreted as [1, 0, 3].
This issue becomes evident in Parquet roundtrip tests, as we end up not able to correctly compare nested structures that have non-null children.
The specification caters for the above behaviour, see http://arrow.apache.org/docs/format/Columnar.html#struct-layout .
When a struct has nulls, its child array(s) nullability is subject to the parent struct.
Reporter: Neville Dipale / @nevi-me
Assignee: Neville Dipale / @nevi-me
PRs and other links:
Note: This issue was originally created as ARROW-10684. Please see the migration documentation for further details.