diff options
author | antirez <antirez@gmail.com> | 2014-04-12 10:59:12 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2014-04-16 15:26:27 +0200 |
commit | c1ddead7791d30f858ee514e7c1dd04e42b6b69b (patch) | |
tree | 025d281b1ef09cbc21d9297207c2f40cf4ebac27 | |
parent | 0a7ba6faefb887fb2c648803940a2b41214e6317 (diff) | |
download | redis-c1ddead7791d30f858ee514e7c1dd04e42b6b69b.tar.gz |
Fix HLL sparse object creation.
The function didn't considered the fact that each XZERO opcode is
two bytes.
-rw-r--r-- | src/hyperloglog.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/hyperloglog.c b/src/hyperloglog.c index 22d73ce44..5157cd8ef 100644 --- a/src/hyperloglog.c +++ b/src/hyperloglog.c @@ -913,8 +913,8 @@ robj *createHLLObject(void) { sds s; uint8_t *p; int sparselen = HLL_HDR_SIZE + - ((HLL_REGISTERS+(HLL_SPARSE_XZERO_MAX_LEN-1)) / - HLL_SPARSE_XZERO_MAX_LEN); + (((HLL_REGISTERS+(HLL_SPARSE_XZERO_MAX_LEN-1)) / + HLL_SPARSE_XZERO_MAX_LEN)*2); int aux; /* Populate the sparse representation with as many XZERO opcodes as |