Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Tiered compaction: improvements to the windows (#7787)
Tiered compaction employs two sliding windows over the keyspace: `KeyspaceWindow` for the image layer generation and `Window` for the delta layer generation. Do some fixes to both windows: * The distinction between the two windows is not very clear. Do the absolute minimum to mention where they are used in the rustdoc description of the struct. Maybe we should rename them (say `WindowForImage` and `WindowForDelta`) or merge them into one window implementation. * Require the keys to strictly increase. The `accum_key_values` already combines the key, so there is no logic needed in `Window::feed` for the same key repeating. This is a follow-up to address the request in #7671 (review) * In `choose_next_delta`, we claimed in the comment to use 1.25 as the factor but it was 1.66 instead. Fix this discrepancy by using `*5/4` as the two operations.
- Loading branch information
4b8809b
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.
3153 tests run: 3014 passed, 0 failed, 139 skipped (full report)
Code coverage* (full report)
functions
:31.4% (6349 of 20190 functions)
lines
:47.4% (47939 of 101054 lines)
* collected from Rust tests only
4b8809b at 2024-05-16T21:43:03.062Z :recycle: