goutamadwant opened a new pull request, #24590: URL: https://github.com/apache/datafusion/pull/24590
## Which issue does this PR close? - Closes #24506. ## Rationale for this change Recursive nested List casts currently cast the entire backing child array. A sliced List or a null parent row can therefore fail because an unreachable child value cannot be cast, even though that value is not part of the query result. ## What changes are included in this PR? - Compact List and LargeList child values when slices or null parents leave unreachable values. - Select and remap the union of reachable ListView and LargeListView child ranges while preserving shared and overlapping values. - Keep a zero-copy fast path when all child values are reachable. - Add unit coverage for sliced, null-parent, overlapping, out-of-order, nested, and visible-invalid inputs, plus the SQL LIMIT regression from the issue. ## Are these changes tested? Yes. - 68 focused nested-Struct cast tests. - The `struct.slt` SQLLogicTest suite, including the LIMIT regression. - Repository-wide all-target, all-feature clippy with warnings denied. - The contributor-guide extended workspace test suite, including 505 SQLLogicTest files. - `cargo fmt --all -- --check` and `git diff --check`. ## Are there any user-facing changes? Nested List casts now ignore child values that are unreachable from visible, non-null parent rows. Reachable invalid child values still return an error. There are no public API or schema changes. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
