rocksdb/utilities
Yi Wu e58d377182 Blob DB: Fix race condition between flush and write
Summary:
A race condition will happen when:
* a user thread writes a value, but it hits the write stop condition because there are too many un-flushed memtables, while holding blob_db_impl.write_mutex_.
* Flush is triggered and call flush begin listener and try to acquire blob_db_impl.write_mutex_.

Fixing it.
Closes https://github.com/facebook/rocksdb/pull/3149

Differential Revision: D6279805

Pulled By: yiwu-arbug

fbshipit-source-id: 0e3c58afb78795ebe3360a2c69e05651e3908c40
2017-11-19 19:08:34 -08:00
..
backupable support opening zero backups during engine init 2017-09-12 13:26:34 -07:00
blob_db Blob DB: Fix race condition between flush and write 2017-11-19 19:08:34 -08:00
cassandra Limit number of merge operands in Cassandra merge operator 2017-10-02 16:11:40 -07:00
checkpoint Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
compaction_filters Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
convenience Change RocksDB License 2017-07-15 16:11:23 -07:00
date_tiered WritePrepared Txn: Iterator 2017-10-09 17:15:28 -07:00
document Fix unused var warnings in Release mode 2017-10-23 14:27:04 -07:00
geodb Change RocksDB License 2017-07-15 16:11:23 -07:00
leveldb_options Change RocksDB License 2017-07-15 16:11:23 -07:00
lua CodeMod: Prefer ADD_FAILURE() over EXPECT_TRUE(false), et cetera 2017-07-16 21:26:02 -07:00
memory Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_operators allow nullptr Slice only as sentinel 2017-08-23 10:56:06 -07:00
option_change_migration Change RocksDB License 2017-07-15 16:11:23 -07:00
options Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
persistent_cache Fix unused var warnings in Release mode 2017-10-23 14:27:04 -07:00
redis Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
simulator_cache CacheActivityLogger, component to log cache activity into a file 2017-07-28 12:36:48 -07:00
spatialdb Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
table_properties_collectors fix deletion-triggered compaction in table builder 2017-09-28 18:17:30 -07:00
transactions WritePrepared Txn: Move DB class to its own file 2017-11-02 11:14:30 -07:00
ttl Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
write_batch_with_index WritePrepared Txn: sort indexes before batch collapse 2017-11-01 08:56:57 -07:00
col_buf_decoder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
col_buf_decoder.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
col_buf_encoder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
col_buf_encoder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
column_aware_encoding_exp.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
column_aware_encoding_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
column_aware_encoding_util.cc Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
column_aware_encoding_util.h Change RocksDB License 2017-07-15 16:11:23 -07:00
debug.cc Fix naming in InternalKey 2017-09-12 17:17:42 -07:00
env_librados_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
env_librados.cc Remove double buffering on RandomRead on Windows. 2017-04-27 12:30:05 -07:00
env_librados.md Add EnvLibrados - RocksDB Env of RADOS (#1222) 2016-07-21 11:16:34 -07:00
env_mirror_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
env_mirror.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
env_timed_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
env_timed.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
merge_operators.h garbage collect tombstones in merge operator 2017-08-31 10:11:54 -07:00
object_registry_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
util_merge_operators_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00