From 38e83e61fcdeeb1398030ac5b8871b7608ff530d Mon Sep 17 00:00:00 2001 From: WuYunlong Date: Mon, 21 Jan 2019 17:27:36 +0800 Subject: [PATCH 1/2] Update dict resize policy when aof rewrite process gets killed. --- src/aof.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/aof.c b/src/aof.c index 9723fc333..500e0c936 100644 --- a/src/aof.c +++ b/src/aof.c @@ -221,6 +221,8 @@ static void killAppendOnlyChild(void) { server.aof_rewrite_time_start = -1; /* Close pipes used for IPC between the two processes. */ aofClosePipes(); + + updateDictResizePolicy(); } /* Called when the user switches from "appendonly yes" to "appendonly no" From 9f3ebe6d5988f75a097f2145a3b96901f8665409 Mon Sep 17 00:00:00 2001 From: WuYunlong Date: Mon, 21 Jan 2019 17:33:18 +0800 Subject: [PATCH 2/2] Update dict resize policy when rdb child process gets killed. --- src/db.c | 1 + src/replication.c | 1 + 2 files changed, 2 insertions(+) diff --git a/src/db.c b/src/db.c index 62c8aa131..0ed0cdd19 100644 --- a/src/db.c +++ b/src/db.c @@ -451,6 +451,7 @@ void flushallCommand(client *c) { if (server.rdb_child_pid != -1) { kill(server.rdb_child_pid,SIGUSR1); rdbRemoveTempFile(server.rdb_child_pid); + updateDictResizePolicy(); } if (server.saveparamslen > 0) { /* Normally rdbSave() will reset dirty, but we don't want this here diff --git a/src/replication.c b/src/replication.c index a3110661e..7037ae243 100644 --- a/src/replication.c +++ b/src/replication.c @@ -1255,6 +1255,7 @@ void readSyncBulkPayload(aeEventLoop *el, int fd, void *privdata, int mask) { (long) server.rdb_child_pid); kill(server.rdb_child_pid,SIGUSR1); rdbRemoveTempFile(server.rdb_child_pid); + updateDictResizePolicy(); } if (rename(server.repl_transfer_tmpfile,server.rdb_filename) == -1) {