rocksdb/db
Haobo Xu 48bc0c6ad3 [RocksDB] Fix a race condition in GetSortedWalFiles
Summary: This patch fixed a race condition where a log file is moved to archived dir in the middle of GetSortedWalFiles. Without the fix, the log file would be missed in the result, which leads to transaction log iterator gap. A test utility SyncPoint is added to help reproducing the race condition.

Test Plan: TransactionLogIteratorRace; make check

Reviewers: dhruba, ljin

Reviewed By: dhruba

CC: leveldb

Differential Revision: https://reviews.facebook.net/D17121
2014-04-02 22:12:29 -07:00
..
builder.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
builder.h [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
c_test.c Fix valgrind error in c_test 2014-04-02 17:24:30 -07:00
c.cc [C-API] added the possiblity to create a HashSkipList or HashLinkedList to support prefix seeks 2014-04-01 12:44:27 +02:00
compaction_picker.cc ComputeCompactionScore in CompactionPicker 2014-03-19 16:52:26 -07:00
compaction_picker.h Buffer info logs when picking compactions and write them out after releasing the mutex 2014-03-05 15:36:32 -08:00
compaction.cc Don't compact with zero input files 2014-03-19 16:01:25 -07:00
compaction.h CompactionContext to include is_manual_compaction 2014-02-12 12:24:18 -08:00
corruption_test.cc Some small cleaning up to make some compiling environment happy 2014-03-26 18:11:41 -07:00
db_bench.cc cache friendly blocked bloomfilter 2014-03-28 09:21:20 -07:00
db_filesnapshot.cc [RocksDB] Fix a race condition in GetSortedWalFiles 2014-04-02 22:12:29 -07:00
db_impl_readonly.cc Sanity check on Open 2014-03-20 14:18:29 -07:00
db_impl_readonly.h CompactRange() to return status 2014-01-23 16:41:46 -08:00
db_impl.cc [RocksDB] Fix a race condition in GetSortedWalFiles 2014-04-02 22:12:29 -07:00
db_impl.h [RocksDB] Fix a race condition in GetSortedWalFiles 2014-04-02 22:12:29 -07:00
db_iter.cc DBIter to use static allocated char array for saved_key_ (if it is not too long) 2014-04-01 16:43:11 -07:00
db_iter.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_stats_logger.cc Move functions from VersionSet to Version 2014-01-15 16:18:04 -08:00
db_test.cc [RocksDB] Fix a race condition in GetSortedWalFiles 2014-04-02 22:12:29 -07:00
dbformat_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
dbformat.cc DBIter to use static allocated char array for saved_key_ (if it is not too long) 2014-04-01 16:43:11 -07:00
dbformat.h DBIter to use static allocated char array for saved_key_ (if it is not too long) 2014-04-01 16:43:11 -07:00
deletefile_test.cc Start DeleteFileTest with clean plate 2013-11-15 16:30:23 -08:00
filename_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
filename.cc Unify DeleteFile and DeleteWalFiles 2013-10-25 08:32:14 -07:00
filename.h Unify DeleteFile and DeleteWalFiles 2013-10-25 08:32:14 -07:00
internal_stats.cc [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
internal_stats.h [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
log_format.h Some minor refactoring on the code 2014-01-02 16:32:31 -08:00
log_reader.cc Make Log::Reader more robust 2014-02-28 13:19:47 -08:00
log_reader.h Fix UnmarkEOF for partial blocks 2014-01-27 14:49:10 -08:00
log_test.cc Make it compile on Debian/GCC 4.7 2014-03-14 22:44:35 +00:00
log_writer.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
log_writer.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
memtable_list.cc Several easy-to-add properties related to compaction and flushes 2014-03-18 14:00:09 -07:00
memtable_list.h Several easy-to-add properties related to compaction and flushes 2014-03-18 14:00:09 -07:00
memtable.cc MemTableIterator not to reference Memtable 2014-03-28 16:46:25 -07:00
memtable.h A heuristic way to check if a memtable is full 2014-03-12 16:40:14 -07:00
merge_context.h Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
merge_helper.cc Fix the bug in MergeUtil which causes mixing values of different keys. 2014-03-27 16:15:25 -07:00
merge_helper.h [rocksdb] new CompactionFilterV2 API 2014-03-24 20:47:53 -07:00
merge_operator.cc Some small cleaning up to make some compiling environment happy 2014-03-26 18:11:41 -07:00
merge_test.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
perf_context_test.cc Missing includes 2014-03-14 13:02:20 -07:00
plain_table_db_test.cc PlainTableIterator::Seek() shouldn't check bloom filter in total order mode 2014-04-01 15:05:16 -07:00
prefix_filter_iterator.h Moving Some includes from options.h to forward declaration 2014-01-24 17:16:22 -08:00
prefix_test.cc Fix HashSkipList and HashLinkedList SIGSEGV 2014-03-14 10:02:04 -07:00
repair.cc Optimize fallocation 2014-03-17 21:52:14 -07:00
simple_table_db_test.cc Make table properties shareable 2014-02-07 19:26:49 -08:00
skiplist_test.cc Clean up arena API 2014-01-30 22:10:10 -08:00
skiplist.h Consolidate SliceTransform object ownership 2014-03-10 12:56:46 -07:00
snapshot.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
table_cache.cc When Options.max_num_files=-1, non level0 files also by pass table cache 2014-03-25 18:40:52 -07:00
table_cache.h Fix valgrind error caused by FileMetaData as two level iterator's index block handle 2014-04-02 14:38:28 -07:00
table_properties_collector_test.cc Fix problem 3 for issue #80 2014-02-11 17:52:18 -08:00
table_properties_collector.cc Extract metaindex block from block-based table 2013-12-05 16:34:16 -08:00
table_properties_collector.h Extract metaindex block from block-based table 2013-12-05 16:34:16 -08:00
tailing_iter.cc Consolidate SliceTransform object ownership 2014-03-10 12:56:46 -07:00
tailing_iter.h Tailing iterator 2014-01-23 16:26:08 -08:00
transaction_log_impl.cc Revert "Fix bad merge of D16791 and D16767" 2014-03-12 09:37:43 -07:00
transaction_log_impl.h Revert "Fix bad merge of D16791 and D16767" 2014-03-12 09:37:43 -07:00
version_edit_test.cc Remove compaction pointers 2014-01-16 14:06:53 -08:00
version_edit.cc Don't store version number in MANIFEST 2014-03-31 11:33:09 -07:00
version_edit.h Don't store version number in MANIFEST 2014-03-31 11:33:09 -07:00
version_set_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_set.cc Fix valgrind error caused by FileMetaData as two level iterator's index block handle 2014-04-02 14:38:28 -07:00
version_set.h ComputeCompactionScore in CompactionPicker 2014-03-19 16:52:26 -07:00
write_batch_internal.h In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
write_batch_test.cc [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
write_batch.cc Merge branch 'master' into performance 2014-01-23 16:32:49 -08:00