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

   ### What problem does this PR solve?
   
   Issue Number: None
   
   Related PR: #66835
   
   Problem Summary:
   
   Table-format predicate probes can reference a column that is not registered 
in the schema tree. `StructNode::children_column_exists()` assumed every probe 
had an entry, so an absent key triggered a DCHECK in debug builds or 
`std::out_of_range` in release builds and terminated the BE process.
   
   This change treats an unregistered child as unavailable for file-level 
processing while preserving `has_children_column()` for callers that need to 
distinguish an FE/BE schema-contract mismatch from a file-missing column. The 
unit test covers present, known-missing, and unregistered children.
   
   ### Release note
   
   Prevent a BE abort when table-format processing probes a column absent from 
the schema tree.
   
   ### Check List (For Author)
   
   - Test:
     - No local BE build or unit test was run per the requested validation 
boundary.
     - `build-support/clang-format.sh` passed with clang-format 16.
     - `build-support/check-format.sh` passed with clang-format 16.
     - `build-support/check-build-hygiene.sh` passed.
     - `git diff --check` passed.
   - Behavior changed: Yes. An unregistered schema-tree child now reports 
unavailable instead of terminating the BE process.
   - 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