Revision 447f17127cfb996ec4d8e5348bd2b90f42538c8a authored by Aaron Gao on 11 October 2016, 20:54:26 UTC, committed by Aaron Gao on 11 October 2016, 20:54:26 UTC
Summary:
1) The previous solution for Prev() prefix support is not clean.
Since I add api SeekForPrev(), now the Prev() can be symmetric to Next().
and we do not need SeekToLast() to be called in Prev() any more.

Also, Next() will Seek(prefix_seek_key_) to solve the problem of possible inconsistency between db_iter and merge_iter when
there is merge_operator. And prefix_seek_key is only refreshed when change direction to forward.

2) This diff also solves the bug of Iterator::SeekToLast() with iterate_upper_bound_ with prefix extractor.

add test cases for the above two cases.

There are some tests for the SeekToLast() in Prev(), I will clean them later.

Test Plan: make all check

Reviewers: IslamAbdelRahman, andrewkr, yiwu, sdong

Reviewed By: sdong

Subscribers: andrewkr, dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D63933
1 parent 991b585
History
File Mode Size
arcanist_util
build_tools
cmake
coverage
db
docs
examples
hdfs
include
java
memtable
port
table
third-party
tools
util
utilities
.arcconfig -rw-r--r-- 564 bytes
.clang-format -rw-r--r-- 138 bytes
.gitignore -rw-r--r-- 680 bytes
.travis.yml -rw-r--r-- 1.5 KB
AUTHORS -rw-r--r-- 247 bytes
CMakeLists.txt -rw-r--r-- 23.4 KB
CONTRIBUTING.md -rw-r--r-- 733 bytes
DEFAULT_OPTIONS_HISTORY.md -rw-r--r-- 1.1 KB
DUMP_FORMAT.md -rw-r--r-- 763 bytes
HISTORY.md -rw-r--r-- 36.5 KB
INSTALL.md -rw-r--r-- 3.9 KB
LANGUAGE-BINDINGS.md -rw-r--r-- 646 bytes
LICENSE -rw-r--r-- 1.6 KB
Makefile -rw-r--r-- 48.7 KB
PATENTS -rw-r--r-- 1.9 KB
README.md -rw-r--r-- 1.4 KB
ROCKSDB_LITE.md -rw-r--r-- 1.0 KB
USERS.md -rw-r--r-- 4.5 KB
Vagrantfile -rw-r--r-- 862 bytes
WINDOWS_PORT.md -rw-r--r-- 12.5 KB
appveyor.yml -rw-r--r-- 555 bytes
src.mk -rw-r--r-- 23.6 KB
thirdparty.inc -rw-r--r-- 7.8 KB

README.md

back to top