Fixed memory leak in ShardedLRUCache

Summary: `~ShardedLRUCache()` was empty despite `init()` allocating memory on the heap. Fixed the leak by freeing memory allocated by `init()`.

Test Plan:
make check

Ran valgrind on db_test before and after patch and saw leaked memory went down

Reviewers: vamsi, dhruba, emayanke, sheki

Reviewed By: dhruba

CC: leveldb

Differential Revision: https://reviews.facebook.net/D7791
This commit is contained in:
Kosie van der Merwe 2013-01-08 11:24:15 -08:00
parent 628dc2aad9
commit 4d339d7462

View File

@ -304,7 +304,9 @@ class ShardedLRUCache : public Cache {
: last_id_(0) {
init(capacity, numShardBits);
}
virtual ~ShardedLRUCache() { }
virtual ~ShardedLRUCache() {
delete[] shard_;
}
virtual Handle* Insert(const Slice& key, void* value, size_t charge,
void (*deleter)(const Slice& key, void* value)) {
const uint32_t hash = HashSlice(key);