d9dd2a1926
Summary: As title. No locking/atomic is needed due to thread local. There is also no need to modify the existing client interface, in order to expose related counters. perf_context_test shows a simple example of retrieving the number of user key comparison done for each put and get call. More counters could be added later. Sample output ./perf_context_test 1000000 ==== Test PerfContextTest.KeyComparisonCount Inserting 1000000 key/value pairs ... total user key comparison get: 43446523 total user key comparison put: 8017877 max user key comparison get: 88939 avg user key comparison get:43 Basically, the current skiplist does well on average, but could perform poorly in extreme cases. Test Plan: run perf_context_test <total number of entries to put/get> Reviewers: dhruba Differential Revision: https://reviews.facebook.net/D12225 |
||
---|---|---|
.. | ||
arena.h | ||
c.h | ||
cache.h | ||
compaction_filter.h | ||
comparator.h | ||
db.h | ||
env.h | ||
filter_policy.h | ||
iterator.h | ||
ldb_tool.h | ||
memtablerep.h | ||
merge_operator.h | ||
options.h | ||
perf_context.h | ||
slice_transform.h | ||
slice.h | ||
statistics.h | ||
status.h | ||
table_builder.h | ||
transaction_log_iterator.h | ||
types.h | ||
universal_compaction.h | ||
write_batch.h |