https://github.com/facebook/rocksdb
Revision 9690653db546fa3378e125f278a66f79050b79e8 authored by Maysam Yabandeh on 07 April 2017, 18:25:42 UTC, committed by Facebook Github Bot on 07 April 2017, 18:39:12 UTC
Summary:
Check the result of the benchmark againt a specified truth_db, which is
expected to be produced using the same benchmark but perhaps on a
different commit or with different configs.

The verification is simple and assumes that key/values are generated
deterministically. This assumption would break if db_bench using rand
variable differently from the benchmark that produced truth_db.
Currently it is checked to work on fillrandom and readwhilewriting.

A param finish_after_writes is added to ensure that the background
writing thread will write the same number of entries between two
benchmarks.

Example:
$ TEST_TMPDIR=/dev/shm/truth_db ./db_bench
--benchmarks="fillrandom,readwhilewriting" --num=200000
--finish_after_writes=true
$ TEST_TMPDIR=/dev/shm/tmpdb ./db_bench
--benchmarks="fillrandom,readwhilewriting,verify" --truth_db
/dev/shm/truth_db/dbbench --num=200000 --finish_after_writes=true
Verifying db <= truth_db...
Verifying db >= truth_db...
...Verified
Closes https://github.com/facebook/rocksdb/pull/2098

Differential Revision: D4839233

Pulled By: maysamyabandeh

fbshipit-source-id: 2f4ed31
1 parent dd8f9e3
History
Tip revision: 9690653db546fa3378e125f278a66f79050b79e8 authored by Maysam Yabandeh on 07 April 2017, 18:25:42 UTC
Add a verify phase to benchmarks
Tip revision: 9690653
File Mode Size
arcanist_util
buckifier
build_tools
cache
cmake
coverage
db
docs
env
examples
hdfs
include
java
memtable
monitoring
options
port
table
third-party
tools
util
utilities
.arcconfig -rw-r--r-- 566 bytes
.clang-format -rw-r--r-- 138 bytes
.gitignore -rw-r--r-- 708 bytes
.travis.yml -rw-r--r-- 2.3 KB
AUTHORS -rw-r--r-- 247 bytes
CMakeLists.txt -rw-r--r-- 26.4 KB
CONTRIBUTING.md -rw-r--r-- 733 bytes
DEFAULT_OPTIONS_HISTORY.md -rw-r--r-- 1.4 KB
DUMP_FORMAT.md -rw-r--r-- 763 bytes
HISTORY.md -rw-r--r-- 42.1 KB
INSTALL.md -rw-r--r-- 4.7 KB
LANGUAGE-BINDINGS.md -rw-r--r-- 712 bytes
LICENSE -rw-r--r-- 1.6 KB
Makefile -rw-r--r-- 53.1 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
TARGETS -rw-r--r-- 17.8 KB
USERS.md -rw-r--r-- 4.9 KB
Vagrantfile -rw-r--r-- 877 bytes
WINDOWS_PORT.md -rw-r--r-- 12.5 KB
appveyor.yml -rw-r--r-- 416 bytes
src.mk -rw-r--r-- 24.1 KB
thirdparty.inc -rw-r--r-- 7.8 KB

README.md

back to top