From: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=570371
Redis segfaults in addReply function when I run redis-benchmark against it and connect two slaves simultaneously. The cause seems to be a typo in the dupClientReplyValue function:
--- redis-1.2.1-orig/redis.c 2010-02-18 12:40:23.000000000 +0100 +++ redis-1.2.1/redis.c 2010-02-18 12:42:03.000000000 +0100 @@ -1975,7 +1975,7 @@
static void *dupClientReplyValue(void o) { incrRefCount((robj)o); - return 0; + return o; }
It returned a NULL pointer that was used afterwards as a list*. The patched version has been running for 16+ hours now with slaves and redis-benchmark reconnecting periodically.
Comment #1
Posted on Mar 9, 2010 by Grumpy DogThanks, that's already fixed in Redis Git. Don't remember if it's ok in Redis 1.2.4 as well but I'll backport the fix ASAP.
Comment #2
Posted on Mar 9, 2010 by Grumpy MonkeyIt isn't fixed in 1.2.4 (just went to release that and noticed the patch still applied)
Comment #3
Posted on Mar 11, 2010 by Grumpy MonkeyFixed in 1.2.5, thanks :)
Comment #4
Posted on Aug 24, 2010 by Grumpy Dog(No comment was entered for this change.)
Status: Verified
Labels:
Type-Defect
Priority-Medium