github-actions[bot] commented on code in PR #62304:
URL: https://github.com/apache/doris/pull/62304#discussion_r3205665945


##########
task.md:
##########
@@ -0,0 +1,15 @@
+当前分支实现了 is-null 谓词的优化.

Review Comment:
   This looks like a local scratch note describing the debugging task and stack 
trace, not a Doris source/test/doc change. Please remove it from the PR before 
merging.



##########
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/NestedColumnPruning.java:
##########
@@ -480,6 +541,60 @@ private List<List<String>> getSupplementalPaths() {
         }

Review Comment:
   This parent-`NULL` path cannot be kept in `allAccessPaths` together with 
child data paths with the current BE contract. For `select 
struct_element(struct_col, 'city') from ncp_tbl where struct_col is null`, FE 
now sends `all=[struct_col.NULL, struct_col.city]`. In BE, 
`StructFileColumnIterator::set_access_paths()` strips the root name, sees 
`NULL` in `sub_all_access_paths`, `_check_and_set_meta_read_mode()` switches 
the whole struct iterator to `NULL_MAP_ONLY`, and lines 1562-1568 skip all 
sub-column iterators before `city` is routed. The projected `city` value is 
then default-filled instead of read. This is distinct from the existing 
predicate-only child-path thread: here the child path is present in 
`allAccessPaths`, but the parent `NULL` meta mode takes precedence and 
suppresses it. Please either avoid emitting parent `.NULL` in `allAccessPaths` 
when any real child path is also required, or update the BE iterator logic so 
`NULL_MAP_ONLY` only applies when the null-map path is t
 he only required access.



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