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]

Reply via email to