Skip to content

Uninformative logging during manual compaction #13688

Open
@Ryan4253

Description

@Ryan4253

Currently during manual compaction the logs are not very informative about what happens for each compaction (i.e. what levels are being compacted, whether the compaction succeeded)

To reproduce

Create a rocksdb database, write a value to it then start manual compaction
The logs obtained was as follows:

2025/04/04-10:47:23.391220 42848 [db/db_impl/db_impl_compaction_flush.cc:2176] [metadatal Manual compaction starting
<some more logs>
2025/04/04-10:47:26.003890 42848 [db/db_impl/db_impl_compaction_flush.cc:2176] [metadatal Manual compaction starting

It is not super clear why there are two manual compactions started when manual compaction is only started once. Upon further digging into the code it turns out that the first one is from level 0 to -2 which succeeded, then the second one is from level 6 to 6 which didn't get scheduled since there are no old files to compact. The logs should inform users about this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions