From f52884e99fb28af57768f9e4edc783e5fd1782c8 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 12 Feb 2016 12:44:11 -0500 Subject: [PATCH] report errors returned from redis Change-Id: If94a9b468949840efa3774672c13237cc1f99c5e --- daemon/redis.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/daemon/redis.c b/daemon/redis.c index d4c906224..f1d79994b 100644 --- a/daemon/redis.c +++ b/daemon/redis.c @@ -76,15 +76,22 @@ static redisReply *redis_get(struct redis *r, int type, const char *fmt, ...) { static int redisCommandNR(redisContext *r, const char *fmt, ...) { va_list ap; redisReply *ret; + int i = 0; va_start(ap, fmt); ret = redisvCommand(r, fmt, ap); va_end(ap); - if (ret) - freeReplyObject(ret); + if (!ret) + return -1; + + if (ret->type == REDIS_REPLY_ERROR) { + i = -1; + ilog(LOG_WARNING, "Redis returned error to command '%s': %s", fmt, ret->str); + } - return ret ? 0 : -1; + freeReplyObject(ret); + return i; }