rocksdb/utilities/blob_db
yiwu-arbug 5b68b114f1 Blob db create a snapshot before every read
Summary:
If GC kicks in between

* A Get() reads index entry from base db.
* The Get() read from a blob file

The GC can delete the corresponding blob file, making the key not found. Fortunately we have existing logic to avoid deleting a blob file if it is referenced by a snapshot. So the fix is to explicitly create a snapshot before reading index entry from base db.
Closes https://github.com/facebook/rocksdb/pull/2754

Differential Revision: D5655956

Pulled By: yiwu-arbug

fbshipit-source-id: e4ccbc51331362542e7343175bbcbdea5830f544
2017-08-20 18:26:19 -07:00
..
blob_db_impl.cc Blob db create a snapshot before every read 2017-08-20 18:26:19 -07:00
blob_db_impl.h Blob db create a snapshot before every read 2017-08-20 18:26:19 -07:00
blob_db_test.cc Blob db create a snapshot before every read 2017-08-20 18:26:19 -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 Fix blob DB transaction usage while GC 2017-08-11 12:43:17 -07:00
blob_log_reader.h Fix blob DB transaction usage while GC 2017-08-11 12:43:17 -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