bobhan1 opened a new pull request, #69495:
URL: https://github.com/apache/doris/pull/69495
### What problem does this PR solve?
Issue Number: N/A
Related PR: #69325
Backport #69325 to `branch-4.1` from commit
`85adcce350bf4ece48955daa7ac426bef53a892f`.
Event-driven warmup can leave completed records allocated indefinitely when
a rowset is compacted before the target synchronizes its metadata. Reuse tablet
vacuum to reclaim completed records absent from visible and stale rowsets after
a configurable grace period, release oversized hash buckets, and fence delayed
callbacks and index registration with an attempt generation. Keep running
attempts and records used by local query version paths. Release tablet locks
before clearing unused rowset caches.
Adapt the segment download signatures and callbacks to the existing
`branch-4.1` segment APIs; retain the branch's existing tests and port the
upstream GC/callback tests.
### Release note
Cloud backends reclaim orphaned completed rowset warmup records to reduce
memory growth. `warm_up_rowset_state_gc_grace_period_seconds` controls the
retention grace period and defaults to 3600 seconds.
### Check List (For Author)
- Test
- [ ] Regression test
- [x] Unit Test: ASAN BE UT build and 74/74 tests across
`CloudTabletWarmUpStateTest`, `CloudTabletMgrTest`, `TestQueryPreferCache`, and
`TestFreshnessTolerance` passed on `branch-4.1` base
`06b990bcd7da49e0027e25ad45c289076d39ee0c` with `./run-be-ut.sh --run
--filter='CloudTabletWarmUpStateTest.*:CloudTabletMgrTest.*:*PreferCache*:*FreshnessTolerance*'
-j100`.
- [x] Manual test: clang-format 16 check on changed lines and `git diff
--check upstream/branch-4.1...HEAD` passed.
- Behavior changed:
- [x] Yes. Aged orphaned completed warmup records are reclaimed and may
subsequently be warmed again. Running and local visible/stale records remain
tracked.
- Does this need documentation?
- [x] No.
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
--
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]