rocksdb/db
Venkatesh Radhakrishnan b2b3086524 Speed up rocksDB close call.
Summary:
On RocksDB, when there are multiple instances doing
flushes/compactions in the background, the close call takes a long time
because the flushes/compactions need to complete before the database can
shut down. If another instance is using the background threads and the compaction for this instance is in the queue since it has been scheduled, we still cannot shutdown. We now remove the scheduled background tasks which have not yet started running, so that shutdown is speeded up.

Test Plan: DB Test added.

Reviewers: yhchiang, igor, sdong

Reviewed By: sdong

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D33741
2015-03-16 18:49:14 -07:00
..
builder.cc Add columnfamily option optimize_filters_for_hits to optimize for key hits only 2015-02-26 16:25:56 -08:00
builder.h Add columnfamily option optimize_filters_for_hits to optimize for key hits only 2015-02-26 16:25:56 -08:00
c.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
c_test.c rocksdb: Fixed 'Dead assignment' and 'Dead initialization' scan-build warnings 2015-02-23 14:10:09 -08:00
column_family.cc Stop printing per-level stall times. 2015-03-14 15:01:43 -07:00
column_family.h options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
column_family_test.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
compact_files_test.cc Fixed a bug where CompactFiles won't delete obsolete files until flush. 2015-03-11 13:06:59 -07:00
compaction.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
compaction.h options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
compaction_job.cc Fixed the unit-test issue in PreShutdownCompactionMiddle 2015-03-14 08:25:27 -07:00
compaction_job.h Allow GetThreadList() to report operation stage. 2015-03-13 10:45:40 -07:00
compaction_job_test.cc Introduce job_id for flush and compaction 2015-02-12 09:54:48 -08:00
compaction_picker.cc Change the way options.compression_per_level is used when options.level_compaction_dynamic_level_bytes=true 2015-03-11 13:14:52 -07:00
compaction_picker.h options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
compaction_picker_test.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
comparator_db_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
corruption_test.cc Fail DB::Open() on WAL corruption 2015-01-05 10:26:34 -08:00
cuckoo_table_db_test.cc
db_bench.cc Fix SIGSEGV when not using cache 2015-03-13 16:41:00 -07:00
db_filesnapshot.cc Introduce job_id for flush and compaction 2015-02-12 09:54:48 -08:00
db_impl.cc Speed up rocksDB close call. 2015-03-16 18:49:14 -07:00
db_impl.h EventLogger 2015-03-13 10:15:54 -07:00
db_impl_debug.cc Add a counter for collecting the wait time on db mutex. 2015-02-04 21:39:45 -08:00
db_impl_readonly.cc Move GetThreadList() feature under Env. 2014-12-22 12:20:17 -08:00
db_impl_readonly.h
db_iter.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
db_iter.h
db_iter_test.cc Divide test DBIteratorTest.DBIterator to smaller tests 2015-02-03 09:48:03 -08:00
db_test.cc Speed up rocksDB close call. 2015-03-16 18:49:14 -07:00
dbformat.cc
dbformat.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
dbformat_test.cc
deletefile_test.cc
fault_injection_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
file_indexer.cc
file_indexer.h
file_indexer_test.cc rocksdb: Small refactoring before migrating to gtest 2015-03-16 18:08:59 -07:00
filename.cc Sync manifest file when initializing it 2015-01-22 14:32:03 -08:00
filename.h Sync manifest file when initializing it 2015-01-22 14:32:03 -08:00
filename_test.cc
flush_job.cc Allow GetThreadList() to report operation stage. 2015-03-13 10:45:40 -07:00
flush_job.h Allow GetThreadList() to report operation stage. 2015-03-13 10:45:40 -07:00
flush_job_test.cc EventLogger 2015-03-13 10:15:54 -07:00
flush_scheduler.cc
flush_scheduler.h Fix data race #1 2015-01-26 11:48:07 -08:00
forward_iterator.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
forward_iterator.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
internal_stats.cc Fix compaction IO stats to handle large file counts 2015-03-16 11:50:23 -07:00
internal_stats.h Stop printing per-level stall times. 2015-03-14 15:01:43 -07:00
job_context.h Introduce job_id for flush and compaction 2015-02-12 09:54:48 -08:00
listener_test.cc Fixed a compile warning in clang in db/listener_test.cc 2015-01-27 15:01:04 -08:00
log_and_apply_bench.cc Add a counter for collecting the wait time on db mutex. 2015-02-04 21:39:45 -08:00
log_format.h
log_reader.cc rocksdb: Fixed 'Dead assignment' and 'Dead initialization' scan-build warnings 2015-02-23 14:10:09 -08:00
log_reader.h
log_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
log_writer.cc fix erroneous assert: cast kBlockSize (of type unsigned int) to "int" 2015-02-20 11:07:17 -08:00
log_writer.h
managed_iterator.cc Fix compile error on MacOS. 2015-02-24 16:24:53 -08:00
managed_iterator.h Managed iterator 2015-02-18 11:49:31 -08:00
memtable.cc Instrument memtable seeks 2015-02-27 17:06:06 -08:00
memtable.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
memtable_allocator.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
memtable_allocator.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
memtable_list.cc Allow GetThreadList() to report operation stage. 2015-03-13 10:45:40 -07:00
memtable_list.h Add a counter for collecting the wait time on db mutex. 2015-02-04 21:39:45 -08:00
memtablerep_bench.cc Fix clang build 2015-01-13 12:27:28 -08:00
merge_context.h
merge_helper.cc
merge_helper.h
merge_operator.cc
merge_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
perf_context_test.cc rocksdb: Small refactoring before migrating to gtest 2015-03-16 18:08:59 -07:00
plain_table_db_test.cc
prefix_test.cc rocksdb: Small refactoring before migrating to gtest 2015-03-16 18:08:59 -07:00
repair.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
skiplist.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
skiplist_test.cc
snapshot.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
table_cache.cc
table_cache.h
table_properties_collector.cc
table_properties_collector.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
table_properties_collector_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
transaction_log_impl.cc
transaction_log_impl.h rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
version_builder.cc Fix deleting obsolete files 2015-02-06 08:44:30 -08:00
version_builder.h
version_builder_test.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
version_edit.cc
version_edit.h Fix deleting obsolete files 2015-02-06 08:44:30 -08:00
version_edit_test.cc
version_set.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
version_set.h options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
version_set_test.cc options.level_compaction_dynamic_level_bytes to allow RocksDB to pick size bases of levels dynamically. 2015-03-02 22:40:41 -08:00
wal_manager.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
wal_manager.h
wal_manager_test.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
write_batch.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
write_batch_internal.h
write_batch_test.cc rocksdb: Add missing override 2015-02-26 11:28:41 -08:00
write_controller.cc
write_controller.h
write_controller_test.cc
write_thread.cc
write_thread.h Add a counter for collecting the wait time on db mutex. 2015-02-04 21:39:45 -08:00
writebuffer.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00