diff --git a/src/t_list.c b/src/t_list.c index 7c79185f..ebe666dd 100644 --- a/src/t_list.c +++ b/src/t_list.c @@ -678,9 +678,17 @@ void lremCommand(redisClient *c) { if (subject->encoding == REDIS_ENCODING_ZIPLIST) decrRefCount(obj); - if (listTypeLength(subject) == 0) dbDelete(c->db,c->argv[1]); + if (removed) { + signalModifiedKey(c->db,c->argv[1]); + notifyKeyspaceEvent(NOTIFY_GENERIC,"lrem",c->argv[1],c->db->id); + } + + if (listTypeLength(subject) == 0) { + dbDelete(c->db,c->argv[1]); + notifyKeyspaceEvent(NOTIFY_GENERIC,"del",c->argv[1],c->db->id); + } + addReplyLongLong(c,removed); - if (removed) signalModifiedKey(c->db,c->argv[1]); } /* This is the semantic of this command: