rocksdb/utilities/blob_db
Yi Wu 0d4a2b7330 Avoid blob db call Sync() while writing
Summary:
The FsyncFiles background job call Fsync() periodically for blob files. However it can access WritableFileWriter concurrently with a Put() or Write(). And WritableFileWriter does not support concurrent access. It will lead to WritableFileWriter buffer being flush with same content twice, and blob file end up corrupted. Fixing by simply let FsyncFiles hold write_mutex_.
Closes https://github.com/facebook/rocksdb/pull/2685

Differential Revision: D5561908

Pulled By: yiwu-arbug

fbshipit-source-id: f0bb5bcab0e05694e053b8c49eab43640721e872
2017-08-04 13:12:07 -07:00
..
blob_db_impl.cc Avoid blob db call Sync() while writing 2017-08-04 13:12:07 -07:00
blob_db_impl.h Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_db_test.cc Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_db.cc Dump Blob DB options to info log 2017-08-01 13:01:47 -07:00
blob_db.h Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_dump_tool.cc Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_dump_tool.h Change RocksDB License 2017-07-15 16:11:23 -07:00
blob_file.cc Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_log_format.cc Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_log_format.h Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_log_reader.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
blob_log_reader.h Change RocksDB License 2017-07-15 16:11:23 -07:00
blob_log_writer.cc Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
blob_log_writer.h Update all blob db TTL and timestamps to uint64_t 2017-08-03 17:57:30 -07:00
ttl_extractor.cc Move blob_db/ttl_extractor.h into blob_db/blob_db.h 2017-07-28 14:28:21 -07:00