]> git.saurik.com Git - redis.git/commitdiff
redis.conf new features the new option, a minor typo preventing the compilation fixed
authorantirez <antirez@gmail.com>
Fri, 28 May 2010 08:48:04 +0000 (10:48 +0200)
committerantirez <antirez@gmail.com>
Fri, 28 May 2010 08:48:04 +0000 (10:48 +0200)
redis.c
redis.conf

diff --git a/redis.c b/redis.c
index f747c046031f2530330e6390ea7980bddb7b906e..8c4e3ab232dd6f144e3a7e8e712d1bc24cbf43fb 100644 (file)
--- a/redis.c
+++ b/redis.c
@@ -1386,7 +1386,7 @@ void backgroundRewriteDoneHandler(int statloc) {
             /* If append only is actually enabled... */
             close(server.appendfd);
             server.appendfd = fd;
-            if (appendfsync != APPENDFSYNC_NO) aof_fsync(fd);
+            if (server.appendfsync != APPENDFSYNC_NO) aof_fsync(fd);
             server.appendseldb = -1; /* Make sure it will issue SELECT */
             redisLog(REDIS_NOTICE,"The new append only file was selected for future appends.");
         } else {
index c48a2fb82a345baf9c0a73c055883b04e876cf62..b087417a8ca81fc16714bba1cf0e7f4e0fdb372e 100644 (file)
@@ -195,6 +195,26 @@ appendonly no
 appendfsync everysec
 # appendfsync no
 
+# When the AOF fsync policy is set to always or everysec, and a background
+# saving process (a background save or AOF log background rewriting) is
+# performing a lot of I/O against the disk, in some Linux configurations
+# Redis may block too long on the fsync() call. Note that there is no fix for
+# this currently, as even performing fsync in a different thread will block
+# our synchronous write(2) call.
+#
+# In order to mitigate this problem it's possible to use the following option
+# that will prevent fsync() from being called in the main process while a
+# BGSAVE or BGREWRITEAOF is in progress.
+#
+# This means that while another child is saving the durability of Redis is
+# the same as "appendfsync none", that in pratical terms means that it is
+# possible to lost up to 30 seconds of log in the worst scenario (with the
+# default Linux settings).
+# 
+# If you have latency problems turn this to "yes". Otherwise leave it as
+# "no" that is the safest pick from the point of view of durability.
+no-appendfsync-on-rewrite no
+
 ################################ VIRTUAL MEMORY ###############################
 
 # Virtual Memory allows Redis to work with datasets bigger than the actual