diff options
author | Oran Agra <oran@redislabs.com> | 2017-09-17 07:22:16 +0300 |
---|---|---|
committer | Oran Agra <oran@redislabs.com> | 2017-09-17 07:22:16 +0300 |
commit | b122cadc666054ea83c699d65b518dc0f6f633c0 (patch) | |
tree | f8a895587c22ff12b37a43fe8b82c3caca66abe5 | |
parent | 202c2ebec4d47d6f8cfbb6c91dd4486dd62aebf6 (diff) | |
download | redis-b122cadc666054ea83c699d65b518dc0f6f633c0.tar.gz |
Flush append only buffers before existing.
when SHUTDOWN command is recived it is possible that some of the recent
command were not yet flushed from the AOF buffer, and the server
experiences data loss at shutdown.
-rw-r--r-- | src/server.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server.c b/src/server.c index ef05f055d..312b95048 100644 --- a/src/server.c +++ b/src/server.c @@ -2536,8 +2536,9 @@ int prepareForShutdown(int flags) { "There is a child rewriting the AOF. Killing it!"); kill(server.aof_child_pid,SIGUSR1); } - /* Append only file: fsync() the AOF and exit */ + /* Append only file: flush buffers and fsync() the AOF at exit */ serverLog(LL_NOTICE,"Calling fsync() on the AOF file."); + flushAppendOnlyFile(1); aof_fsync(server.aof_fd); } |