PSYNC: another change to unexpected reply from PSYNC.

This commit is contained in:
antirez 2013-02-13 18:43:40 +01:00
parent 0e1be5347b
commit 072c91fe13

View File

@ -956,14 +956,11 @@ int slaveTryPartialResynchronization(int fd) {
if (!runid || !offset || (offset-runid-1) != REDIS_RUN_ID_SIZE) {
redisLog(REDIS_WARNING,
"Master replied with wrong +FULLRESYNC syntax.");
sdsfree(reply);
/* This is an unexpected condition, actually the +FULLRESYNC
* reply means that the master supports PSYNC, but the reply
* format seems wrong. To stay safe we blank the master
* runid to make sure next PSYNCs will fail, and return
* NOT_SUPPORTED to the caller to use SYNC instead. */
* runid to make sure next PSYNCs will fail. */
memset(server.repl_master_runid,0,REDIS_RUN_ID_SIZE+1);
return PSYNC_NOT_SUPPORTED;
} else {
memcpy(server.repl_master_runid, runid, offset-runid-1);
server.repl_master_runid[REDIS_RUN_ID_SIZE] = '\0';