954b496b3f
Summary: this PR fixes a few failed contbuild: 1. ASAN memory leak in Block::NewIterator (table/block.cc:429). the proper destruction of first_level_iter_ and second_level_iter_ of two_level_iterator.cc is missing from the code after the refactoring in https://github.com/facebook/rocksdb/pull/3406 2. various unused param errors introduced by https://github.com/facebook/rocksdb/pull/3662 3. updated comment for `ForceReleaseCachedEntry` to emphasize the use of `force_erase` flag. Closes https://github.com/facebook/rocksdb/pull/3718 Reviewed By: maysamyabandeh Differential Revision: D7621192 Pulled By: miasantreble fbshipit-source-id: 476c94264083a0730ded957c29de7807e4f5b146 |
||
---|---|---|
.. | ||
README | ||
redis_list_exception.h | ||
redis_list_iterator.h | ||
redis_lists_test.cc | ||
redis_lists.cc | ||
redis_lists.h |
This folder defines a REDIS-style interface for Rocksdb. Right now it is written as a simple tag-on in the rocksdb::RedisLists class. It implements Redis Lists, and supports only the "non-blocking operations". Internally, the set of lists are stored in a rocksdb database, mapping keys to values. Each "value" is the list itself, storing a sequence of "elements". Each element is stored as a 32-bit-integer, followed by a sequence of bytes. The 32-bit-integer represents the length of the element (that is, the number of bytes that follow). And then that many bytes follow. NOTE: This README file may be old. See the actual redis_lists.cc file for definitive details on the implementation. There should be a header at the top of that file, explaining a bit of the implementation details.