rocksdb/db
Xing Jin 17dc128048 Pull from https://reviews.facebook.net/D10917
Summary: Pull Mark's patch and slightly revise it. I revised another place in db_impl.cc with similar new formula.

Test Plan:
make all check. Also run "time ./db_bench --num=2500000000 --numdistinct=2200000000". It has run for 20+ hours and hasn't finished. Looks good so far:

Installed stack trace handler for SIGILL SIGSEGV SIGBUS SIGABRT
LevelDB:    version 2.0
Date:       Tue Aug 20 23:11:55 2013
CPU:        32 * Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz
CPUCache:   20480 KB
Keys:       16 bytes each
Values:     100 bytes each (50 bytes after compression)
Entries:    2500000000
RawSize:    276565.6 MB (estimated)
FileSize:   157356.3 MB (estimated)
Write rate limit: 0
Compression: snappy
WARNING: Assertions are enabled; benchmarks unnecessarily slow
------------------------------------------------
DB path: [/tmp/leveldbtest-3088/dbbench]
fillseq      :    7202.000 micros/op 138 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
fillsync     :    7148.000 micros/op 139 ops/sec; (2500000 ops)
DB path: [/tmp/leveldbtest-3088/dbbench]
fillrandom   :    7105.000 micros/op 140 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
overwrite    :    6930.000 micros/op 144 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
readrandom   :       1.020 micros/op 980507 ops/sec; (0 of 2500000000 found)
DB path: [/tmp/leveldbtest-3088/dbbench]
readrandom   :       1.021 micros/op 979620 ops/sec; (0 of 2500000000 found)
DB path: [/tmp/leveldbtest-3088/dbbench]
readseq      :     113.000 micros/op 8849 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
readreverse  :     102.000 micros/op 9803 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
Created bg thread 0x7f0ac17f7700
compact      :  111701.000 micros/op 8 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
readrandom   :       1.020 micros/op 980376 ops/sec; (0 of 2500000000 found)
DB path: [/tmp/leveldbtest-3088/dbbench]
readseq      :     120.000 micros/op 8333 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
readreverse  :      29.000 micros/op 34482 ops/sec;
DB path: [/tmp/leveldbtest-3088/dbbench]
... finished 618100000 ops

Reviewers: MarkCallaghan, haobo, dhruba, chip

Reviewed By: dhruba

Differential Revision: https://reviews.facebook.net/D12441
2013-08-22 22:37:13 -07:00
..
.nfs00000000066c9ebb00000002 Enhance db_bench 2013-03-14 16:00:23 -07:00
builder.cc Made merge_oprator a shared_ptr; and added TTL unit tests 2013-08-20 13:35:28 -07:00
builder.h [RocksDB] cleanup EnvOptions 2013-06-12 11:17:19 -07:00
c_test.c Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
c.cc Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
corruption_test.cc Make arena block size configurable 2013-07-31 12:42:23 -07:00
db_bench.cc Pull from https://reviews.facebook.net/D10917 2013-08-22 22:37:13 -07:00
db_filesnapshot.cc API for getting archived log files 2013-08-19 13:37:04 -07:00
db_impl_readonly.cc [RocksDB] [MergeOperator] The new Merge Interface! Uses merge sequences. 2013-08-05 20:14:32 -07:00
db_impl_readonly.h [RocksDB] [MergeOperator] The new Merge Interface! Uses merge sequences. 2013-08-05 20:14:32 -07:00
db_impl.cc Pull from https://reviews.facebook.net/D10917 2013-08-22 22:37:13 -07:00
db_impl.h Add APIs to query SST file metadata and to delete specific SST files 2013-08-22 15:27:19 -07:00
db_iter.cc Made merge_oprator a shared_ptr; and added TTL unit tests 2013-08-20 13:35:28 -07:00
db_iter.h [Rocksdb] Support Merge operation in rocksdb 2013-05-03 16:59:02 -07:00
db_statistics.h Expose statistic for sequence number and implement setTickerCount 2013-08-15 23:00:20 -07:00
db_stats_logger.cc remove boost 2012-09-16 19:33:43 -07:00
db_test.cc Made merge_oprator a shared_ptr; and added TTL unit tests 2013-08-20 13:35:28 -07:00
dbformat_test.cc Fix all warnings generated by -Wall option to the compiler. 2012-11-06 14:07:31 -08:00
dbformat.cc [RocksDB] Expose thread local perf counter for low overhead, per call level performance statistics. 2013-08-14 15:24:06 -07:00
dbformat.h Implement log blobs 2013-08-14 16:32:46 -07:00
deletefile_test.cc Add APIs to query SST file metadata and to delete specific SST files 2013-08-22 15:27:19 -07:00
filename_test.cc Added meta-database support. 2012-12-17 11:26:59 -08:00
filename.cc API for getting archived log files 2013-08-19 13:37:04 -07:00
filename.h Added meta-database support. 2012-12-17 11:26:59 -08:00
log_format.h Fixed sign-comparison in rocksdb code-base and fixed Makefile 2013-03-19 14:35:23 -07:00
log_reader.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
log_reader.h TransactionLogIter should stall at the last record. Currently it errors out 2013-03-21 15:12:35 -07:00
log_test.cc Fix more signed-unsigned comparisons 2013-03-19 17:21:36 -07:00
log_writer.cc Fix a number of object lifetime/ownership issues 2013-01-23 16:54:11 -08:00
log_writer.h Fix a number of object lifetime/ownership issues 2013-01-23 16:54:11 -08:00
memtable.cc Made merge_oprator a shared_ptr; and added TTL unit tests 2013-08-20 13:35:28 -07:00
memtable.h Counter for merge failure 2013-08-13 14:25:42 -07:00
memtablelist.cc Counter for merge failure 2013-08-13 14:25:42 -07:00
memtablelist.h [RocksDB] [MergeOperator] The new Merge Interface! Uses merge sequences. 2013-08-05 20:14:32 -07:00
merge_helper.cc Merge operator fixes part 1. 2013-08-19 11:42:47 -07:00
merge_helper.h Counter for merge failure 2013-08-13 14:25:42 -07:00
merge_operator.cc Merge operator fixes part 1. 2013-08-19 11:42:47 -07:00
merge_test.cc Made merge_oprator a shared_ptr; and added TTL unit tests 2013-08-20 13:35:28 -07:00
perf_context_test.cc [RocksDB] Expose thread local perf counter for low overhead, per call level performance statistics. 2013-08-14 15:24:06 -07:00
perf_context.cc [RocksDB] Expose thread local perf counter for low overhead, per call level performance statistics. 2013-08-14 15:24:06 -07:00
prefix_filter_iterator.h Prefix filters for scans (v4) 2013-08-13 14:04:56 -07:00
repair.cc Merge branch 'master' into performance 2013-08-02 10:22:08 -07:00
skiplist_test.cc Make arena block size configurable 2013-07-31 12:42:23 -07:00
skiplist.h Make arena block size configurable 2013-07-31 12:42:23 -07:00
skiplistrep.h Make arena block size configurable 2013-07-31 12:42:23 -07:00
snapshot.h [RocksDB] fix compaction filter trigger condition 2013-05-13 12:33:02 -07:00
table_cache.cc Revert "Prefix scan: db_bench and bug fixes" 2013-08-22 18:01:11 -07:00
table_cache.h Revert "Prefix scan: db_bench and bug fixes" 2013-08-22 18:01:11 -07:00
transaction_log_impl.cc API for getting archived log files 2013-08-19 13:37:04 -07:00
transaction_log_impl.h API for getting archived log files 2013-08-19 13:37:04 -07:00
version_edit_test.cc Reduce write amplification by merging files in L0 back into L0 2013-06-30 20:07:04 -07:00
version_edit.cc Merge remote-tracking branch 'origin' into performance 2013-08-12 09:58:50 -07:00
version_edit.h Merge remote-tracking branch 'origin' into performance 2013-08-12 09:58:50 -07:00
version_set_reduce_num_levels.cc Fix valgrind errors in rocksdb tests: auto_roll_logger_test, reduce_levels_test 2013-03-12 16:03:16 -07:00
version_set_test.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
version_set.cc Revert "Prefix scan: db_bench and bug fixes" 2013-08-22 18:01:11 -07:00
version_set.h Revert "Prefix scan: db_bench and bug fixes" 2013-08-22 18:01:11 -07:00
write_batch_internal.h Use KeyMayExist for WriteBatch-Deletes 2013-07-23 13:36:50 -07:00
write_batch_test.cc Allow WriteBatch::Handler to abort iteration 2013-08-21 18:27:48 -07:00
write_batch.cc Allow WriteBatch::Handler to abort iteration 2013-08-21 18:27:48 -07:00