-
Notifications
You must be signed in to change notification settings - Fork 590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(compaction): add vnode watermark picker #17372
Conversation
One issue is compaction tasks of dynamic type has the highest priority, potentially starving space reclaim tasks. |
The assumptions are:
2 is not 100% valid because dynamic task will not take reclaim releated statistics like tombstone ratio into consideration. Also, for trivial reclaim task, which uses very few resource, it can be done relatively fast and won't block dynamic tasks. However, this is a separate issue pre-exists prior to this PR so we don't need to block this PR because of that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
Do we have a integration test (like the one in compaction test pipeline maybe?) to verify the effectiveness of the new picker?
/test |
Failed: 1 Please ignore this, it's failed because of the toml issue in the pipeline |
Failed: 1 |
/test |
Failed: 0 PassedExecutions: |
I'm still considering how to add the corresponding tests. |
I ended up with adding a simulation integration test. |
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
close #17157
SkipWatermarkState::from_safe_epoch_watermarks
andHummockVersion::safe_epoch_table_watermarks
into pure functions for easier reuse.CompactionSelectorContext
to convey parameters to compaction selectors.Checklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.