HappenLee opened a new pull request, #66517:
URL: https://github.com/apache/doris/pull/66517
### What problem does this PR solve?
Issue Number: None
Related PR: #66102
Problem Summary:
Backport #66102 to branch-4.1. Nullable aggregation hash tables marked the
null-key entry as present before aggregate-state creation completed. If
creation or later LIMIT maintenance threw, cleanup could either destroy
uninitialized storage or miss destruction of a live aggregate state.
This backport publishes the null-key entry only after successful creation,
value-initializes null-key storage, and rolls back completed aggregate states
when post-construction LIMIT maintenance fails. The conflict in
`hash_table_method_test.cpp` was resolved by carrying over only the
exception-safety coverage from #66102; unrelated tests that exist only on
master were not introduced into branch-4.1.
### Release note
Fix cleanup of nullable aggregation states when creation or
post-construction LIMIT maintenance fails.
### Check List (For Author)
- Test:
- `PATH=/mnt/disk6/common/ldb_toolchain_toucan/bin:$PATH
build-support/check-format.sh` (passed)
- `GLIBC_COMPATIBILITY=OFF ./run-be-ut.sh -j 48 --run
--filter=HashTableMethodTest.*` (running; result will be updated)
- Behavior changed: Yes. Failed null-key state creation is not published,
and fully constructed state is rolled back if later LIMIT maintenance throws.
- 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]