rocksdb/utilities/blob_db
Yu Zhang d12aaf23ca Fix file deletions in DestroyDB not rate limited (#12891)
Summary:
Make `DestroyDB` slowly delete files if it's configured and enabled via `SstFileManager`.

It's currently not available mainly because of DeleteScheduler's logic related to tracked total_size_ and total_trash_size_. These accounting and logic should not be applied to `DestroyDB`. This PR adds a `DeleteUnaccountedDBFile` util for this purpose which deletes files without accounting it.  This util also supports assigning a file to a specified trash bucket so that user can later wait for a specific trash bucket to be empty. For `DestroyDB`, files with more than 1 hard links will be deleted immediately.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/12891

Test Plan: Added unit tests, existing tests.

Reviewed By: anand1976

Differential Revision: D60300220

Pulled By: jowlyzhang

fbshipit-source-id: 8b18109a177a3a9532f6dc2e40e08310c08ca3c7
2024-08-02 19:31:55 -07:00
..
blob_compaction_filter.cc Run internal cpp modernizer on RocksDB repo (#12398) 2024-03-04 10:08:32 -08:00
blob_compaction_filter.h Change internal headers with duplicate names (#11408) 2023-05-17 11:27:09 -07:00
blob_db.cc Run internal cpp modernizer on RocksDB repo (#12398) 2024-03-04 10:08:32 -08:00
blob_db.h Deprecate some variants of Get and MultiGet (#12327) 2024-02-16 09:21:06 -08:00
blob_db_gc_stats.h Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
blob_db_impl.cc Run internal cpp modernizer on RocksDB repo (#12398) 2024-03-04 10:08:32 -08:00
blob_db_impl.h Add GetLiveFilesStorageInfo to legacy BlobDB (#12468) 2024-04-05 13:50:27 -07:00
blob_db_impl_filesnapshot.cc Add GetLiveFilesStorageInfo to legacy BlobDB (#12468) 2024-04-05 13:50:27 -07:00
blob_db_iterator.h Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
blob_db_listener.h Group SST write in flush, compaction and db open with new stats (#11910) 2023-12-29 15:29:23 -08:00
blob_db_test.cc Fix file deletions in DestroyDB not rate limited (#12891) 2024-08-02 19:31:55 -07:00
blob_dump_tool.cc Run internal cpp modernizer on RocksDB repo (#12398) 2024-03-04 10:08:32 -08:00
blob_dump_tool.h Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
blob_file.cc Run internal cpp modernizer on RocksDB repo (#12398) 2024-03-04 10:08:32 -08:00
blob_file.h Group SST write in flush, compaction and db open with new stats (#11910) 2023-12-29 15:29:23 -08:00