rocksdb/utilities/blob_db
Yi Wu 7c27f3ddc6 Blob DB: fix snapshot handling
Summary:
Blob db will keep blob file if data in the file is visible to an active snapshot. Before this patch it checks whether there is an active snapshot has sequence number greater than the earliest sequence in the file. This is problematic since we take snapshot on every read, if it keep having reads, old blob files will not be cleanup. Change to check if there is an active snapshot falls in the range of [earliest_sequence, obsolete_sequence) where obsolete sequence is
1. if data is relocated to another file by garbage collection, it is the latest sequence at the time garbage collection finish
2. otherwise, it is the latest sequence of the file
Closes https://github.com/facebook/rocksdb/pull/3087

Differential Revision: D6182519

Pulled By: yiwu-arbug

fbshipit-source-id: cdf4c35281f782eb2a9ad6a87b6727bbdff27a45
2017-11-19 19:07:15 -08:00
..
blob_db_impl.cc Blob DB: fix snapshot handling 2017-11-19 19:07:15 -08:00
blob_db_impl.h Blob DB: fix snapshot handling 2017-11-19 19:07:15 -08:00
blob_db_iterator.h Blob DB: Store blob index as kTypeBlobIndex in base db 2017-10-17 17:28:11 -07:00
blob_db_test.cc Blob DB: fix snapshot handling 2017-11-19 19:07:15 -08:00
blob_db.cc Blob DB: option to enable garbage collection 2017-11-19 19:04:05 -08:00
blob_db.h Blob DB: option to enable garbage collection 2017-11-19 19:04:05 -08:00
blob_dump_tool.cc Blob DB: update blob file format 2017-10-27 13:27:12 -07:00
blob_dump_tool.h Change RocksDB License 2017-07-15 16:11:23 -07:00
blob_file.cc Blob DB: fix snapshot handling 2017-11-19 19:07:15 -08:00
blob_file.h Blob DB: fix snapshot handling 2017-11-19 19:07:15 -08:00
blob_index.h Blob DB: Inline small values in base DB 2017-10-26 12:30:54 -07:00
blob_log_format.cc Blob DB: update blob file format 2017-10-27 13:27:12 -07:00
blob_log_format.h Blob DB: Initialize all fields in Blob Header, Footer and Record structs 2017-10-31 16:42:08 -07:00
blob_log_reader.cc Blob DB: update blob file format 2017-10-27 13:27:12 -07:00
blob_log_reader.h Blob DB: update blob file format 2017-10-27 13:27:12 -07:00
blob_log_writer.cc Blob DB: update blob file format 2017-10-27 13:27:12 -07:00
blob_log_writer.h Blob DB: update blob file format 2017-10-27 13:27:12 -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