HLLCOUNT is technically a write command

When we update the cached value, we need to propagate the command and
signal the key as modified for WATCH.
This commit is contained in:
antirez 2014-03-31 12:29:24 +02:00
parent 8aeb0c196a
commit 4ab45183fc

View File

@ -522,6 +522,12 @@ void hllCountCommand(redisClient *c) {
registers[REDIS_HLL_SIZE-3] = (card >> 40) & 0xff;
registers[REDIS_HLL_SIZE-2] = (card >> 48) & 0xff;
registers[REDIS_HLL_SIZE-1] = (card >> 56) & 0xff;
/* This is not considered a read-only command even if the
* data structure is not modified, since the cached value
* may be modified and given that the HLL is a Redis string
* we need to propagate the change. */
signalModifiedKey(c->db,c->argv[1]);
server.dirty++;
}
addReplyLongLong(c,card);
}