zclllyybb opened a new pull request, #65732: URL: https://github.com/apache/doris/pull/65732
### What problem does this PR solve? Issue Number: N/A Related PR: N/A Problem Summary: An empty or too-short libunwind stack trace underflows the remaining-frame count in `StackTrace::toString()` after it skips its internal frames. Formatting an error `Status` then reads beyond the fixed frame array and can crash the BE. Treat non-positive stack-capture results as empty, render a trace with fewer frames than the requested skip as the existing `<Empty trace>`, and preserve signal-context offsets after slicing. A debug-point BEUT injects an empty trace into the real `Status::NotFound` capture/logging path. ### Release note None ### Check List (For Author) - [x] ASAN BEUT: `StatusTest.EmptyCapturedStackTrace` - [x] `build-support/check-format.sh` - [x] `git diff --check` ### Validation note The latest branch has an unrelated full-BE-build `-Werror` failure in `be/src/format_v2/column_mapper.cpp` for unused catch parameters. The targeted BEUT was built and passed with that single warning disabled in the test environment; no source workaround is included here. -- 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]
