From: antirez Date: Thu, 8 Apr 2010 14:07:26 +0000 (+0200) Subject: Merge branch 'issue_218' of git://github.com/pietern/redis X-Git-Url: https://git.saurik.com/redis.git/commitdiff_plain/5727b9aa940cd3ae4884ca3fbede57d96b183b1f?hp=-c Merge branch 'issue_218' of git://github.com/pietern/redis --- 5727b9aa940cd3ae4884ca3fbede57d96b183b1f diff --combined redis.c index f3db2426,85244859..b1fbb524 --- a/redis.c +++ b/redis.c @@@ -1223,7 -1223,7 +1223,7 @@@ void backgroundSaveDoneHandler(int stat redisLog(REDIS_WARNING, "Background saving error"); } else { redisLog(REDIS_WARNING, - "Background saving terminated by signal"); + "Background saving terminated by signal %d", WTERMSIG(statloc)); rdbRemoveTempFile(server.bgsavechildpid); } server.bgsavechildpid = -1; @@@ -1284,8 -1284,7 +1284,8 @@@ void backgroundRewriteDoneHandler(int s redisLog(REDIS_WARNING, "Background append only file rewriting error"); } else { redisLog(REDIS_WARNING, - "Background append only file rewriting terminated by signal"); + "Background append only file rewriting terminated by signal %d", + WTERMSIG(statloc)); } cleanup: sdsfree(server.bgrewritebuf); @@@ -2602,6 -2601,21 +2602,21 @@@ static void addReplyLong(redisClient *c addReplySds(c,sdsnewlen(buf,len)); } + static void addReplyLongLong(redisClient *c, long long ll) { + char buf[128]; + size_t len; + + if (ll == 0) { + addReply(c,shared.czero); + return; + } else if (ll == 1) { + addReply(c,shared.cone); + return; + } + len = snprintf(buf,sizeof(buf),":%lld\r\n",ll); + addReplySds(c,sdsnewlen(buf,len)); + } + static void addReplyUlong(redisClient *c, unsigned long ul) { char buf[128]; size_t len; @@@ -5092,7 -5106,7 +5107,7 @@@ static int zslRandomLevel(void) int level = 1; while ((random()&0xFFFF) < (ZSKIPLIST_P * 0xFFFF)) level += 1; - return level; + return (levelargv[3]); - incr = strtoll(o_incr->ptr, NULL, 10); - decrRefCount(o_incr); - + incr = strtoll(c->argv[3]->ptr, NULL, 10); if (o->encoding == REDIS_ENCODING_ZIPMAP) { unsigned char *zm = o->ptr; unsigned char *zval; @@@ -6092,7 -6103,7 +6104,7 @@@ } server.dirty++; - addReplyLong(c, value); + addReplyLongLong(c, value); } static void hgetCommand(redisClient *c) {