diff options
author | gabor@google.com <gabor@google.com@62dab493-f737-651d-591e-8d6aee1b9529> | 2011-08-22 21:08:51 +0000 |
---|---|---|
committer | gabor@google.com <gabor@google.com@62dab493-f737-651d-591e-8d6aee1b9529> | 2011-08-22 21:08:51 +0000 |
commit | e3584f9c28833ec0530b39540ffd406ee41dbc3a (patch) | |
tree | e68d1bb6e1e2ad1c2a9acfa6ae26cf2d691055e7 /util/histogram.h | |
parent | ab323f7e1ec53749653967e7d6a2fa1c922334f2 (diff) | |
download | leveldb-e3584f9c28833ec0530b39540ffd406ee41dbc3a.tar.gz |
Bugfix for issue 33; reduce lock contention in Get(), parallel benchmarks.
- Fix for issue 33 (non-null-terminated result from
leveldb_property_value())
- Support for running multiple instances of a benchmark in parallel.
- Reduce lock contention on Get():
(1) Do not hold the lock while searching memtables.
(2) Shard block and table caches 16-ways.
Benchmark for evaluating this change:
$ db_bench --benchmarks=fillseq1,readrandom --threads=$n
(fillseq1 is a small hack to make sure fillseq runs once regardless
of number of threads specified on the command line).
git-svn-id: https://leveldb.googlecode.com/svn/trunk@49 62dab493-f737-651d-591e-8d6aee1b9529
Diffstat (limited to 'util/histogram.h')
-rw-r--r-- | util/histogram.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/util/histogram.h b/util/histogram.h index f72f122..32484c0 100644 --- a/util/histogram.h +++ b/util/histogram.h @@ -16,6 +16,7 @@ class Histogram { void Clear(); void Add(double value); + void Merge(const Histogram& other); std::string ToString() const; |