Commit 18e61fa2 authored by antirez's avatar antirez
Browse files

Fix for replicaiton with over 2GB dump file initial SYNC stage

parent 978c2c94
...@@ -6787,7 +6787,7 @@ static void updateSlavesWaitingBgsave(int bgsaveerr) { ...@@ -6787,7 +6787,7 @@ static void updateSlavesWaitingBgsave(int bgsaveerr) {
static int syncWithMaster(void) { static int syncWithMaster(void) {
char buf[1024], tmpfile[256], authcmd[1024]; char buf[1024], tmpfile[256], authcmd[1024];
int dumpsize; long dumpsize;
int fd = anetTcpConnect(NULL,server.masterhost,server.masterport); int fd = anetTcpConnect(NULL,server.masterhost,server.masterport);
int dfd; int dfd;
...@@ -6839,8 +6839,8 @@ static int syncWithMaster(void) { ...@@ -6839,8 +6839,8 @@ static int syncWithMaster(void) {
redisLog(REDIS_WARNING,"Bad protocol from MASTER, the first byte is not '$', are you sure the host and port are right?"); redisLog(REDIS_WARNING,"Bad protocol from MASTER, the first byte is not '$', are you sure the host and port are right?");
return REDIS_ERR; return REDIS_ERR;
} }
dumpsize = atoi(buf+1); dumpsize = strtol(buf+1,NULL,10);
redisLog(REDIS_NOTICE,"Receiving %d bytes data dump from MASTER",dumpsize); redisLog(REDIS_NOTICE,"Receiving %ld bytes data dump from MASTER",dumpsize);
/* Read the bulk write data on a temp file */ /* Read the bulk write data on a temp file */
snprintf(tmpfile,256,"temp-%d.%ld.rdb",(int)time(NULL),(long int)random()); snprintf(tmpfile,256,"temp-%d.%ld.rdb",(int)time(NULL),(long int)random());
dfd = open(tmpfile,O_CREAT|O_WRONLY,0644); dfd = open(tmpfile,O_CREAT|O_WRONLY,0644);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment