starrocks
starrocks copied to clipboard
[BugFix] clean stale column stats periodically
Why I'm doing:
Truncate operation didn't clear the stale column statistics.
What I'm doing:
- Move
GlobalStateMgr.getCurrentState().getAnalyzeMgr().dropPartition(partitionId);
into the drop partition interface to ensure the invoker would clear the stale column statistics. - add a periodic task to clear the stale column statistics. The strategy is:
- do the clear task once every 12 hours.
- After the last cleanup, if a table has successfully undergone a statistics collection, and the collection completion time is after the last cleanup time (or it is before the cleanup time in 30 minutes), then during the next cleanup process, the stale column statistics would be cleared.
Fixes #issue
What type of PR is this:
- [x] BugFix
- [ ] Feature
- [ ] Enhancement
- [ ] Refactor
- [ ] UT
- [ ] Doc
- [ ] Tool
Does this PR entail a change in behavior?
- [ ] Yes, this PR will result in a change in behavior.
- [x] No, this PR will not result in a change in behavior.
If yes, please specify the type of change:
- [ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
- [ ] Parameter changes: default values, similar parameters but with different default values
- [ ] Policy changes: use new policy to replace old one, functionality automatically enabled
- [ ] Feature removed
- [ ] Miscellaneous: upgrade & downgrade compatibility, etc.
Checklist:
- [x] I have added test cases for my bug fix or my new feature
- [ ] This pr needs user documentation (for new or modified features or behaviors)
- [ ] I have added documentation for my new feature or new function
- [ ] This is a backport pr
Bugfix cherry-pick branch check:
- [x] I have checked the version labels which the pr will be auto-backported to the target branch
- [x] 3.3
- [x] 3.2
- [x] 3.1
- [x] 3.0
- [x] 2.5