However, when the db program exits abnormally, Cleaner may cause the SSTable that needs to be deleted to be lost (because there is no persistence), so it may no longer process the SSTable that should be deleted after restarting.
I think Cleaner can persist this part of information to ensure that unnecessary SSTables can still be cleared after an abnormal restart.
Feature Request
https://github.com/tonbo-io/tonbo/blob/main/src/version/cleaner.rs
Cleaner
will record the newly added and deletedSSTables
after each compaction, and delete theSSTables
that are no longer needed after the relevant transaction is destroyed.However, when the db program exits abnormally, Cleaner may cause the
SSTable
that needs to be deleted to be lost (because there is no persistence), so it may no longer process theSSTable
that should be deleted after restarting.I think
Cleaner
can persist this part of information to ensure that unnecessarySSTables
can still be cleared after an abnormal restart.