Error message for invalid HLL objects unified.

This commit is contained in:
antirez 2014-04-14 16:11:54 +02:00
parent 81ceef7d22
commit 848d0461f9

View File

@ -204,6 +204,8 @@ struct hllhdr {
#define HLL_SPARSE_MAX 12000 #define HLL_SPARSE_MAX 12000
static char *invalid_hll_err = "Corrupted HLL object detected";
/* =========================== Low level bit macros ========================= */ /* =========================== Low level bit macros ========================= */
/* Macros to access the dense representation. /* Macros to access the dense representation.
@ -1085,7 +1087,7 @@ void pfaddCommand(redisClient *c) {
updated++; updated++;
break; break;
case -1: case -1:
addReplyError(c,"Invalid HyperLogLog representation"); addReplyError(c,invalid_hll_err);
return; return;
} }
} }
@ -1130,7 +1132,7 @@ void pfcountCommand(redisClient *c) {
/* Recompute it and update the cached value. */ /* Recompute it and update the cached value. */
card = hllCount(hdr,&invalid); card = hllCount(hdr,&invalid);
if (invalid) { if (invalid) {
addReplyError(c,"Invalid HLL object detected"); addReplyError(c,invalid_hll_err);
return; return;
} }
hdr->card[0] = card & 0xff; hdr->card[0] = card & 0xff;
@ -1204,7 +1206,7 @@ void pfmergeCommand(redisClient *c) {
} }
} }
if (i != HLL_REGISTERS) { if (i != HLL_REGISTERS) {
addReplyError(c,"Invalid HLL object detected"); addReplyError(c,invalid_hll_err);
return; return;
} }
} }
@ -1227,7 +1229,7 @@ void pfmergeCommand(redisClient *c) {
/* Only support dense objects as destination. */ /* Only support dense objects as destination. */
if (hllSparseToDense(o) == REDIS_ERR) { if (hllSparseToDense(o) == REDIS_ERR) {
addReplyError(c,"Invalid HLL object detected"); addReplyError(c,invalid_hll_err);
return; return;
} }
@ -1345,7 +1347,7 @@ void pfdebugCommand(redisClient *c) {
if (hdr->encoding == HLL_SPARSE) { if (hdr->encoding == HLL_SPARSE) {
if (hllSparseToDense(o) == REDIS_ERR) { if (hllSparseToDense(o) == REDIS_ERR) {
addReplyError(c,"Invalid HLL object detected"); addReplyError(c,invalid_hll_err);
return; return;
} }
server.dirty++; /* Force propagation on encoding change. */ server.dirty++; /* Force propagation on encoding change. */