Commit a37d0f8b authored by antirez's avatar antirez
Browse files

SPOP with count: fix replication for code path #3.

parent 9feee428
...@@ -517,10 +517,18 @@ void spopWithCountCommand(redisClient *c) { ...@@ -517,10 +517,18 @@ void spopWithCountCommand(redisClient *c) {
si = setTypeInitIterator(set); si = setTypeInitIterator(set);
while((encoding = setTypeNext(si,&objele,&llele)) != -1) { while((encoding = setTypeNext(si,&objele,&llele)) != -1) {
if (encoding == REDIS_ENCODING_INTSET) { if (encoding == REDIS_ENCODING_INTSET) {
addReplyBulkLongLong(c,llele); objele = createStringObjectFromLongLong(llele);
} else { } else {
addReplyBulk(c,objele); incrRefCount(objele);
} }
addReplyBulk(c,objele);
/* Replicate/AOF this command as an SREM operation */
propargv[2] = objele;
alsoPropagate(server.sremCommand,c->db->id,propargv,3,
REDIS_PROPAGATE_AOF|REDIS_PROPAGATE_REPL);
decrRefCount(objele);
} }
setTypeReleaseIterator(si); setTypeReleaseIterator(si);
decrRefCount(set); decrRefCount(set);
......
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