X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/2df84b726983ae1f4fc9c16da61d5a0ce5114cc4..3ab203762f28ffec4036dc4f5a188d637cf78ff1:/src/rdb.c diff --git a/src/rdb.c b/src/rdb.c index d8de5f76..c15fc6f2 100644 --- a/src/rdb.c +++ b/src/rdb.c @@ -457,6 +457,7 @@ int rdbSaveBackground(char *filename) { if (server.bgsavechildpid != -1) return REDIS_ERR; if (server.vm_enabled) waitEmptyIOJobsQueue(); + server.dirty_before_bgsave = server.dirty; if ((childpid = fork()) == 0) { /* Child */ if (server.vm_enabled) vmReopenSwapFile(); @@ -913,7 +914,7 @@ void backgroundSaveDoneHandler(int statloc) { if (!bysignal && exitcode == 0) { redisLog(REDIS_NOTICE, "Background saving terminated with success"); - server.dirty = 0; + server.dirty = server.dirty - server.dirty_before_bgsave; server.lastsave = time(NULL); } else if (!bysignal && exitcode != 0) { redisLog(REDIS_WARNING, "Background saving error");