Unverified Commit 1ed5ac7c authored by Salvatore Sanfilippo's avatar Salvatore Sanfilippo Committed by GitHub
Browse files

Merge pull request #4601 from soloestoy/fix-memoryleak-for-lazy-server-del

lazyfree: fix memory leak for lazyfree-lazy-server-del
parents aeeb7477 0517ab83
...@@ -64,9 +64,10 @@ int dbAsyncDelete(redisDb *db, robj *key) { ...@@ -64,9 +64,10 @@ int dbAsyncDelete(redisDb *db, robj *key) {
robj *val = dictGetVal(de); robj *val = dictGetVal(de);
size_t free_effort = lazyfreeGetFreeEffort(val); size_t free_effort = lazyfreeGetFreeEffort(val);
/* If releasing the object is too much work, let's put it into the /* If releasing the object is too much work and the refcount
* lazy free list. */ * is 1, that means the object really needs to be freed,
if (free_effort > LAZYFREE_THRESHOLD) { * let's put it into the lazy free list. */
if (free_effort > LAZYFREE_THRESHOLD && val->refcount == 1) {
atomicIncr(lazyfree_objects,1); atomicIncr(lazyfree_objects,1);
bioCreateBackgroundJob(BIO_LAZY_FREE,val,NULL,NULL); bioCreateBackgroundJob(BIO_LAZY_FREE,val,NULL,NULL);
dictSetVal(db->dict,de,NULL); dictSetVal(db->dict,de,NULL);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment