提交 4d339d74 编写于 作者: K Kosie van der Merwe

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
上级 628dc2aa
......@@ -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);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册