rocksdb/db
Andrew Kryczka 43549c7d59 Prevent unnecessary calls to PurgeObsoleteFiles
Summary:
Split `JobContext::HaveSomethingToDelete` into two functions: itself and `JobContext::HaveSomethingToClean`. Now we won't call `DBImpl::PurgeObsoleteFiles` in cases where we really just need to call `JobContext::Clean`. The change is needed because I want to track pending calls to `PurgeObsoleteFiles` for a bug fix, which is much simpler if we only call it after `FindObsoleteFiles` finds files to delete.
Closes https://github.com/facebook/rocksdb/pull/3350

Differential Revision: D6690609

Pulled By: ajkr

fbshipit-source-id: 61502e7469288afe16a663a1b7df345baeaf246f
2018-01-12 13:27:08 -08:00
..
builder.cc Stream 2017-11-10 09:26:24 -08:00
builder.h Stream 2017-11-10 09:26:24 -08:00
c.cc add support for allow_ingest_behind in C API 2018-01-08 17:26:31 -08:00
c_test.c Added save points for transactions C API 2017-09-14 14:18:59 -07:00
column_family.cc Stream 2017-11-10 09:26:24 -08:00
column_family.h Fix drop column family data race 2017-12-11 13:57:48 -08:00
column_family_test.cc arena: derive alignment unit from std::max_align_t 2017-10-17 11:13:19 -07:00
compact_files_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
compacted_db_impl.cc Fix coverity issues column_family, compaction_db/iterator 2017-10-27 11:26:42 -07:00
compacted_db_impl.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
compaction.cc Make Universal compaction options dynamic 2017-12-11 13:27:06 -08:00
compaction.h Change RocksDB License 2017-07-15 16:11:23 -07:00
compaction_iteration_stats.h add counter for deletion dropping optimization 2017-08-19 14:10:08 -07:00
compaction_iterator.cc WritePrepared Txn: fix compaction filter snapshot checks 2017-12-12 11:12:24 -08:00
compaction_iterator.h Added support for differential snapshots 2017-11-01 18:56:43 -07:00
compaction_iterator_test.cc Added support for differential snapshots 2017-11-01 18:56:43 -07:00
compaction_job.cc Fix a wrong log formatting 2018-01-09 14:58:33 -08:00
compaction_job.h Make DBOption compaction_readahead_size dynamic 2017-11-16 17:57:25 -08:00
compaction_job_stats_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
compaction_job_test.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
compaction_picker.cc use bottommost compression when base level is bottommost 2017-11-09 17:42:00 -08:00
compaction_picker.h fix hanging after CompactFiles with L0 overlap 2017-09-13 15:41:38 -07:00
compaction_picker_test.cc Make Universal compaction options dynamic 2017-12-11 13:27:06 -08:00
compaction_picker_universal.cc Make Universal compaction options dynamic 2017-12-11 13:27:06 -08:00
compaction_picker_universal.h Make Universal compaction options dynamic 2017-12-11 13:27:06 -08:00
comparator_db_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
convenience.cc add VerifyChecksum() to db.h 2017-08-09 15:58:13 -07:00
corruption_test.cc fix corruption_test valgrind 2017-08-11 12:29:14 -07:00
cuckoo_table_db_test.cc Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
db_basic_test.cc Fix directory name for db_basic_test 2018-01-10 15:41:46 -08:00
db_blob_index_test.cc fix lite build 2017-10-17 08:57:09 -07:00
db_block_cache_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_bloom_filter_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_compaction_filter_test.cc Split CompactionFilterWithValueChange 2017-10-20 15:42:07 -07:00
db_compaction_test.cc fix ASAN for DeleteFilesInRange test case 2017-12-07 11:12:43 -08:00
db_dynamic_level_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_encryption_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_filesnapshot.cc Remove some left-over BSD headers 2017-07-18 11:56:57 -07:00
db_flush_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_impl.cc Fix memleak when DB::DeleteFile() 2018-01-11 18:57:33 -08:00
db_impl.h fix DBImpl instance variable naming 2018-01-09 12:56:58 -08:00
db_impl_compaction_flush.cc Prevent unnecessary calls to PurgeObsoleteFiles 2018-01-12 13:27:08 -08:00
db_impl_debug.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
db_impl_experimental.cc Inform caller when rocksdb is stalling writes 2017-10-05 18:11:43 -07:00
db_impl_files.cc fix DBImpl instance variable naming 2018-01-09 12:56:58 -08:00
db_impl_open.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
db_impl_readonly.cc WritePrepared Txn: Iterator 2017-10-09 17:15:28 -07:00
db_impl_readonly.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_impl_write.cc fix DBImpl instance variable naming 2018-01-09 12:56:58 -08:00
db_info_dumper.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_info_dumper.h Change RocksDB License 2017-07-15 16:11:23 -07:00
db_inplace_update_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_io_failure_test.cc Fix LITE unit tests 2017-07-26 21:11:47 -07:00
db_iter.cc WritePrepared Txn: Return NotSupported on iterator refresh 2017-12-18 22:29:30 -08:00
db_iter.h WritePrepared Txn: Return NotSupported on iterator refresh 2017-12-18 22:29:30 -08:00
db_iter_test.cc fix Seek with lower_bound 2017-11-29 22:56:29 -08:00
db_iterator_test.cc fix Seek with lower_bound 2017-11-29 22:56:29 -08:00
db_log_iter_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_memtable_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_merge_operator_test.cc Make iterator invalid on Merge error 2017-12-06 11:56:39 -08:00
db_options_test.cc Make DBOption compaction_readahead_size dynamic 2017-11-16 17:57:25 -08:00
db_properties_test.cc Add DB::Properties::kEstimateOldestKeyTime 2017-10-23 15:27:27 -07:00
db_range_del_test.cc Fix wrong smallest key of delete range tombstones 2017-08-29 18:41:35 -07:00
db_sst_test.cc Fix DeleteScheduler::MarkAsTrash() handling existing trash 2017-12-12 18:17:13 -08:00
db_statistics_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_table_properties_test.cc fix deletion-triggered compaction in table builder 2017-09-28 18:17:30 -07:00
db_tailing_iter_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
db_test.cc replace DBTest.HugeNumbersOfLevel with a more targeted test case 2018-01-12 11:12:09 -08:00
db_test2.cc use bottommost compression when base level is bottommost 2017-11-09 17:42:00 -08:00
db_test_util.cc fix release order in validateNumberOfEntries 2017-12-18 14:27:28 -08:00
db_test_util.h make compaction_readahead_size_ thread safe 2017-11-21 20:11:38 -08:00
db_universal_compaction_test.cc Make Universal compaction options dynamic 2017-12-11 13:27:06 -08:00
db_wal_test.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
db_write_test.cc BlobDB: Remove the need to get sequence number per write 2017-12-15 13:27:30 -08:00
dbformat.cc Added support for differential snapshots 2017-11-01 18:56:43 -07:00
dbformat.h Fix coverity issues compaction_job, compaction_picker 2017-12-11 11:57:15 -08:00
dbformat_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
deletefile_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
event_helpers.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
event_helpers.h Change RocksDB License 2017-07-15 16:11:23 -07:00
experimental.cc Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
external_sst_file_basic_test.cc optimize file ingestion checks for range deletion overlap 2017-11-28 11:27:02 -08:00
external_sst_file_ingestion_job.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
external_sst_file_ingestion_job.h optimize file ingestion checks for range deletion overlap 2017-11-28 11:27:02 -08:00
external_sst_file_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
fault_injection_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
file_indexer.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
file_indexer.h Change RocksDB License 2017-07-15 16:11:23 -07:00
file_indexer_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
filename_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
flush_job.cc Add a histogram stat for memtable flush 2017-12-15 18:57:00 -08:00
flush_job.h WritePrepared Txn: Compaction/Flush 2017-10-06 10:41:53 -07:00
flush_job_test.cc Add a histogram stat for memtable flush 2017-12-15 18:57:00 -08:00
flush_scheduler.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
flush_scheduler.h Change RocksDB License 2017-07-15 16:11:23 -07:00
forward_iterator.cc fix ForwardIterator reference to temporary object 2017-12-20 16:12:04 -08:00
forward_iterator.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
forward_iterator_bench.cc fix gflags namespace 2017-12-01 10:42:05 -08:00
internal_stats.cc TableProperty::oldest_key_time defaults to 0 2017-10-27 15:00:05 -07:00
internal_stats.h Add DB::Properties::kEstimateOldestKeyTime 2017-10-23 15:27:27 -07:00
job_context.h Prevent unnecessary calls to PurgeObsoleteFiles 2018-01-12 13:27:08 -08:00
listener_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
log_format.h Change RocksDB License 2017-07-15 16:11:23 -07:00
log_reader.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
log_reader.h Change RocksDB License 2017-07-15 16:11:23 -07:00
log_test.cc Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
log_writer.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
log_writer.h Change RocksDB License 2017-07-15 16:11:23 -07:00
malloc_stats.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
malloc_stats.h Change RocksDB License 2017-07-15 16:11:23 -07:00
managed_iterator.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
managed_iterator.h Change RocksDB License 2017-07-15 16:11:23 -07:00
manual_compaction_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
memtable.cc dynamically change current memtable size 2017-11-02 22:28:10 -07:00
memtable.h dynamically change current memtable size 2017-11-02 22:28:10 -07:00
memtable_list.cc Add DB::Properties::kEstimateOldestKeyTime 2017-10-23 15:27:27 -07:00
memtable_list.h Add DB::Properties::kEstimateOldestKeyTime 2017-10-23 15:27:27 -07:00
memtable_list_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_context.h Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_helper.cc Allow merge operator to be called even with a single operand 2017-08-16 23:42:00 -07:00
merge_helper.h Allow merge operator to be called even with a single operand 2017-08-16 23:42:00 -07:00
merge_helper_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_operator.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
options_file_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
perf_context_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
pinned_iterators_manager.h Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_db_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
pre_release_callback.h WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
prefix_test.cc fix gflags namespace 2017-12-01 10:42:05 -08:00
range_del_aggregator.cc optimize file ingestion checks for range deletion overlap 2017-11-28 11:27:02 -08:00
range_del_aggregator.h optimize file ingestion checks for range deletion overlap 2017-11-28 11:27:02 -08:00
range_del_aggregator_test.cc optimize file ingestion checks for range deletion overlap 2017-11-28 11:27:02 -08:00
read_callback.h write-prepared txn: call IsInSnapshot 2017-09-11 09:14:48 -07:00
repair.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
repair_test.cc fix file numbers after repair 2017-10-10 13:12:37 -07:00
snapshot_checker.h WritePrepared Txn: Disable GC during recovery 2017-10-18 09:11:50 -07:00
snapshot_impl.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
snapshot_impl.h BlobDB: Remove the need to get sequence number per write 2017-12-15 13:27:30 -08:00
table_cache.cc Make DBOption compaction_readahead_size dynamic 2017-11-16 17:57:25 -08:00
table_cache.h Change RocksDB License 2017-07-15 16:11:23 -07:00
table_properties_collector.cc fix duplicate definition of GetEntryType() 2017-11-01 22:56:17 -07:00
table_properties_collector.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
table_properties_collector_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
transaction_log_impl.cc WritePrepared Txn: Refactor conf params 2017-11-10 17:28:12 -08:00
transaction_log_impl.h WritePrepared Txn: Refactor conf params 2017-11-10 17:28:12 -08:00
version_builder.cc Fix coverity issues version, write_batch 2017-12-07 11:57:36 -08:00
version_builder.h Allow DB reopen with reduced options.num_levels 2017-08-24 16:10:54 -07:00
version_builder_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
version_edit.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
version_edit.h Fix coverity issues version, write_batch 2017-12-07 11:57:36 -08:00
version_edit_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
version_set.cc Reduce heavy hitter for Get operation 2017-12-12 21:11:33 -08:00
version_set.h WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
version_set_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
wal_manager.cc Fix memleak when DB::DeleteFile() 2018-01-11 18:57:33 -08:00
wal_manager.h Fix memleak when DB::DeleteFile() 2018-01-11 18:57:33 -08:00
wal_manager_test.cc WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00
write_batch.cc add WriteBatch::WriteBatch(std::string&&) 2018-01-11 15:43:56 -08:00
write_batch_base.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
write_batch_internal.h WritePrepared Txn: cross-compatibility test 2017-11-11 11:28:37 -08:00
write_batch_test.cc Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
write_callback.h Change RocksDB License 2017-07-15 16:11:23 -07:00
write_callback_test.cc Fix write_callback_test compile error 2017-12-06 17:12:27 -08:00
write_controller.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
write_controller.h Change RocksDB License 2017-07-15 16:11:23 -07:00
write_controller_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
write_thread.cc Fix IOError on WAL write doesn't propagate to write group follower 2017-11-28 11:42:48 -08:00
write_thread.h WritePrepared Txn: PreReleaseCallback 2017-11-30 23:50:45 -08:00