rocksdb/db/compaction
Sagar Vemuri c17384fea4 Cascade TTL Compactions to move expired key ranges to bottom levels faster (#5992)
Summary:
When users use Level-Compaction-with-TTL by setting `cf_options.ttl`, the ttl-expired data could take n*ttl time to reach the bottom level (where n is the number of levels) due to how the `creation_time` table property was calculated for the newly created files during compaction. The creation time of new files was set to a max of all compaction-input-files-creation-times which essentially resulted in resetting the ttl as the key range moves across levels. This behavior is now fixed by changing the `creation_time` to be based on minimum of all compaction-input-files-creation-times; this will cause cascading compactions across levels for the ttl-expired data to move to the bottom level, resulting in getting rid of tombstones/deleted-data faster.

This will help start cascading compactions to move the expired key range to the bottom-most level faster.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/5992

Test Plan: `make check`

Differential Revision: D18257883

Pulled By: sagar0

fbshipit-source-id: 00df0bb8d0b7e14d9fc239df2cba8559f3e54cbc
2019-11-11 14:09:01 -08:00
..
compaction_iteration_stats.h Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction_iterator_test.cc Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction_iterator.cc Turn compaction asserts to runtime check (#5935) 2019-10-30 13:48:38 -07: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 Fix clang analyzer error (#5924) 2019-10-14 22:14:24 -07:00
compaction_job.cc Cascade TTL Compactions to move expired key ranges to bottom levels faster (#5992) 2019-11-11 14:09:01 -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 assertion failure in FIFO compaction with TTL (#5754) 2019-08-30 12:42:01 -07:00
compaction_picker_fifo.h Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction_picker_level.cc simplify include directive involving inttypes (#5402) 2019-06-06 13:56:07 -07:00
compaction_picker_level.h Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction_picker_test.cc Add two test cases for single sorted universal periodic compaction (#6002) 2019-11-07 11:14:14 -08:00
compaction_picker_universal.cc Fix assertion in universal compaction periodic compaction (#6000) 2019-11-01 18:33:12 -07:00
compaction_picker_universal.h Refactor UniversalCompactionPicker code a little bit (#5639) 2019-09-16 10:51:11 -07:00
compaction_picker.cc simplify include directive involving inttypes (#5402) 2019-06-06 13:56:07 -07:00
compaction_picker.h Organizing rocksdb/db directory 2019-05-31 11:57:01 -07:00
compaction.cc Cascade TTL Compactions to move expired key ranges to bottom levels faster (#5992) 2019-11-11 14:09:01 -08:00
compaction.h Cascade TTL Compactions to move expired key ranges to bottom levels faster (#5992) 2019-11-11 14:09:01 -08:00