rocksdb/db/compaction
Sagar Vemuri cfa585611d Consider all compaction input files to compute the oldest ancestor time (#6279)
Summary:
Look at all compaction input files to compute the oldest ancestor time.

In https://github.com/facebook/rocksdb/issues/5992 we changed how creation_time (aka oldest-ancestor-time) table property of compaction output files is computed from max(creation-time-of-all-compaction-inputs) to min(creation-time-of-all-inputs). This exposed a bug where, during compaction, the creation_time:s of only the L0 compaction inputs were being looked at, and all other input levels were being ignored. This PR fixes the issue.
Some TTL compactions when using Level-Style compactions might not have run due to this bug.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/6279

Test Plan: Enhanced the unit tests to validate that the correct time is propagated to the compaction outputs.

Differential Revision: D19337812

Pulled By: sagar0

fbshipit-source-id: edf8a72f11e405e93032ff5f45590816debe0bb4
2020-01-10 19:02:42 -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 Set CompactionIterator::valid_ to false when PrepareBlobOutput indicates error 2019-12-17 10:20:16 -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 Introduce a new storage specific Env API (#5761) 2019-12-13 14:48:41 -08:00
compaction_job.cc Introduce a new storage specific Env API (#5761) 2019-12-13 14:48:41 -08:00
compaction_job.h Introduce a new storage specific Env API (#5761) 2019-12-13 14:48:41 -08: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 Consider all compaction input files to compute the oldest ancestor time (#6279) 2020-01-10 19:02:42 -08:00
compaction.h Support options.ttl with options.max_open_files = -1 (#6060) 2019-11-22 21:23:00 -08:00