rocksdb/db
Mayank Agarwal c34271a5a5 Fix bug in Counters and record Sequencenumber using only TickerCount
Summary:
The way counters/statistics are implemented in rocksdb demands that enum Tickers and TickerNameMap follow the same order, otherwise statistics exposed from fbcode/rocks get out-of-sync. 2 counters for prefix had violated this order and when I built counters for fbcode/mcrocksdb, statistics for sequence number were appearing out-of-sync.
The other change is to record sequence-number using setTickerCount only and not recordTick. This is because of difference in statistics as understood by rocks/utils which uses ServiceData::statistics function and rocksdb statistics. In rocksdb there is just 1 counter for a countername. But in ServiceData there are 4 independent buckets for every countername-Count, Sum, Average and Rate. SetTickerCount and RecordTick update the same variable in rocksdb but different buckets in ServiceData. Therefore, I had to choose one consistent function from RecordTick or SetTickerCount for sequence number in rocksdb. I chose SetTickerCount because the statistics object in options passed during rocksdb-open is user-dependent and SetTickerCount makes sense there.
There will be a corresponding diff to mcorcksdb in fbcode shortly.

Test Plan: make all check; check ticker value using fprintfs

Reviewers: dhruba

Reviewed By: dhruba

CC: leveldb

Differential Revision: https://reviews.facebook.net/D12669
2013-09-01 17:59:32 -07:00
..
.nfs00000000066c9ebb00000002 Enhance db_bench 2013-03-14 16:00:23 -07:00
builder.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
builder.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
c_test.c Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
c.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
corruption_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_bench.cc Internal/user key bug fix. 2013-08-23 14:49:57 -07:00
db_filesnapshot.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_impl_readonly.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_impl_readonly.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_impl.cc Fix bug in Counters and record Sequencenumber using only TickerCount 2013-09-01 17:59:32 -07:00
db_impl.h Introduced a new flag non_blocking_io in ReadOptions. 2013-08-28 10:49:14 -07:00
db_iter.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_iter.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_statistics.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_stats_logger.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
db_test.cc [RocksDB] Fix TransformRepFactory related valgrind problem 2013-08-28 19:27:54 -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 Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
dbformat.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
deletefile_test.cc Fix build caused by DeleteFile not tolerating / at the beginning 2013-09-01 17:59:13 -07:00
filename_test.cc Added meta-database support. 2012-12-17 11:26:59 -08:00
filename.cc Fix build caused by DeleteFile not tolerating / at the beginning 2013-09-01 17:59:13 -07:00
filename.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07: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 Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
log_reader.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
log_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
log_writer.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
log_writer.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
memtable.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
memtable.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
memtablelist.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
memtablelist.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
merge_helper.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
merge_helper.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
merge_operator.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
merge_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
perf_context_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
perf_context.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
prefix_filter_iterator.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
repair.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
skiplist_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
skiplist.h Make arena block size configurable 2013-07-31 12:42:23 -07:00
snapshot.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
table_cache.cc Introduced a new flag non_blocking_io in ReadOptions. 2013-08-28 10:49:14 -07:00
table_cache.h Introduced a new flag non_blocking_io in ReadOptions. 2013-08-28 10:49:14 -07:00
transaction_log_impl.cc API for getting archived log files 2013-08-19 13:37:04 -07:00
transaction_log_impl.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -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 Fix build caused by DeleteFile not tolerating / at the beginning 2013-09-01 17:59:13 -07:00
version_set.h Introduced a new flag non_blocking_io in ReadOptions. 2013-08-28 10:49:14 -07:00
write_batch_internal.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
write_batch_test.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
write_batch.cc Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00