rocksdb/db/compaction
Levi Tamasi 583c6953d8 Move out valid blobs from the oldest blob files during compaction (#6121)
Summary:
The patch adds logic that relocates live blobs from the oldest N non-TTL
blob files as they are encountered during compaction (assuming the BlobDB
configuration option `enable_garbage_collection` is `true`), where N is defined
as the number of immutable non-TTL blob files multiplied by the value of
a new BlobDB configuration option called `garbage_collection_cutoff`.
(The default value of this parameter is 0.25, that is, by default the valid blobs
residing in the oldest 25% of immutable non-TTL blob files are relocated.)
Pull Request resolved: https://github.com/facebook/rocksdb/pull/6121

Test Plan: Added unit test and tested using the BlobDB mode of `db_bench`.

Differential Revision: D18785357

Pulled By: ltamasi

fbshipit-source-id: 8c21c512a18fba777ec28765c88682bb1a5e694e
2019-12-13 10:13:05 -08:00
..
compaction_iteration_stats.h Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction_iterator_test.cc Fixes for g++ 4.9.2 compatibility (#6053) 2019-11-19 15:43:37 -08:00
compaction_iterator.cc Move out valid blobs from the oldest blob files during compaction (#6121) 2019-12-13 10:13:05 -08:00
compaction_iterator.h Turn compaction asserts to runtime check (#5935) 2019-10-30 13:48:38 -07:00
compaction_job_stats_test.cc Apply formatter to recent 200+ commits. (#5830) 2019-09-20 12:04:26 -07:00
compaction_job_test.cc Support options.max_open_files = -1 with periodic_compaction_seconds (#6090) 2019-11-26 21:39:56 -08:00
compaction_job.cc Support options.max_open_files = -1 with periodic_compaction_seconds (#6090) 2019-11-26 21:39:56 -08:00
compaction_job.h Apply formatter on recent 45 commits. (#5827) 2019-09-19 12:34:17 -07:00
compaction_picker_fifo.cc Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction_picker_fifo.h Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction_picker_level.cc Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction_picker_level.h Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction_picker_test.cc Support options.max_open_files = -1 with periodic_compaction_seconds (#6090) 2019-11-26 21:39:56 -08:00
compaction_picker_universal.cc Fix UniversalCompaction trivial move bug (#6067) 2019-12-11 11:27:53 -08:00
compaction_picker_universal.h Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction_picker.cc fix unstable unittest caused by #5958 (#6061) 2019-11-21 15:24:01 -08:00
compaction_picker.h Fix corruption with intra-L0 on ingested files (#5958) 2019-11-19 15:09:11 -08:00
compaction.cc Support concurrent CF iteration and drop (#6147) 2019-12-12 19:04:48 -08:00
compaction.h Support options.ttl with options.max_open_files = -1 (#6060) 2019-11-22 21:23:00 -08:00