summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2010-08-24 16:27:40 +0200
committerantirez <antirez@gmail.com>2010-08-24 16:27:40 +0200
commitdda93651f7dd782ba5cf8c8c19053a792dab80f3 (patch)
tree021ab01deae631c263f721a188c6557216ff082e
parent3a1ab86a35cc2ea0cd9b477e92a5ce9116c48123 (diff)
downloadredis-dda93651f7dd782ba5cf8c8c19053a792dab80f3.tar.gz
slave now detect lost connection during SYNC, fixing Issue 173
-rw-r--r--redis.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/redis.c b/redis.c
index 1f7b0642f..d3f5975d1 100644
--- a/redis.c
+++ b/redis.c
@@ -8074,9 +8074,9 @@ static int syncWithMaster(void) {
int nread, nwritten;
nread = read(fd,buf,(dumpsize < 1024)?dumpsize:1024);
- if (nread == -1) {
+ if (nread <= 0) {
redisLog(REDIS_WARNING,"I/O error trying to sync with MASTER: %s",
- strerror(errno));
+ (nread == -1) ? strerror(errno) : "connection lost");
close(fd);
close(dfd);
return REDIS_ERR;