mrhhsg opened a new pull request, #63780:
URL: https://github.com/apache/doris/pull/63780

   ### What problem does this PR solve?
   
   Issue Number: None
   
   Related PR: #59263
   
   Problem Summary: Nested column pruning can read only predicate subpaths 
before filtering. When a remaining conjunct also needs the same complex column 
as a common expression, pruned non-predicate subpaths still need to be 
materialized after row filtering. This change introduces an explicit deferred 
read phase for pruned complex columns. Predicate reads keep parent metadata and 
predicate subpaths, deferred reads materialize the remaining nested targets by 
selected rowids, and the finalization step removes temporary default 
placeholders before returning the column. The implementation keeps the phase 
and nested read plan on the iterator, propagates predicate/deferred intent 
through array/map/struct children, and exposes the prune switch through 
TQueryOptions.
   
   ### Release note
   
   Improve nested column pruning read behavior for complex columns used by both 
predicates and remaining expressions.
   
   ### Check List (For Author)
   
   - Test: Unit Test
       - `DORIS_HOME=/mnt/disk7/hushenggang/doris-abs ninja -C be/ut_build_ASAN 
src/storage/CMakeFiles/Storage.dir/segment/column_reader.cpp.o 
src/storage/CMakeFiles/Storage.dir/segment/segment_iterator.cpp.o 
test/CMakeFiles/doris_be_test.dir/storage/segment/column_reader_test.cpp.o`
       - `build-support/clang-format.sh`
       - `git diff --check`
       - Not run: full `ColumnReaderTest` binary and regression suite in this 
worktree.
   - Behavior changed: Yes. Pruned complex common-expression columns can defer 
non-predicate nested materialization until after filtering.
   - Does this need documentation: No
   


-- 
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