facebook / facebook/rocksdb

Remove non empty levels after DB shrinks

Open
#9,437 2 comments 0 reactions 0 assignees View on GitHub
feature-request up-for-grabs
Dominant language
C++
Stars
32.1k
Forks
6.9k
Avg merge
32m
Merged PRs (30d)
1

Description

If most KVs in a DB are deleted, ideally, the LSM-tree should be adjusted to an ideal state. We know that it will naturally happen in Universal Compaction, and is unlikely to happen in non-dynamic leveled compaction without a full compaction. With some special treatment in dynamic leveled compaction, we should make it possible. If we identify a base level becomes obviously excessive, we should pause L0 -> base level compaction temporarily and compact this level to the next level.

The question was raised by @mdcallag .

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.