From 82ef6ebf73cfa2470f61ce14f02eee945873828d Mon Sep 17 00:00:00 2001
From: antirez <antirez@gmail.com>
Date: Thu, 30 Dec 2010 17:53:28 +0100
Subject: [PATCH] added cache-flush-delay configuration directive. Don't BGSAVE
 when using diskstore

---
 src/config.c | 3 +++
 src/redis.c  | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/config.c b/src/config.c
index a4060631..3ba87c73 100644
--- a/src/config.c
+++ b/src/config.c
@@ -250,6 +250,9 @@ void loadServerConfig(char *filename) {
             server.ds_path = sdsnew(argv[1]);
         } else if (!strcasecmp(argv[0],"cache-max-memory") && argc == 2) {
             server.cache_max_memory = memtoll(argv[1],NULL);
+        } else if (!strcasecmp(argv[0],"cache-flush-delay") && argc == 2) {
+            server.cache_flush_delay = atoi(argv[1]);
+            if (server.cache_flush_delay < 0) server.cache_flush_delay = 0;
         } else if (!strcasecmp(argv[0],"hash-max-zipmap-entries") && argc == 2) {
             server.hash_max_zipmap_entries = memtoll(argv[1], NULL);
         } else if (!strcasecmp(argv[0],"hash-max-zipmap-value") && argc == 2) {
diff --git a/src/redis.c b/src/redis.c
index 13fe0f3c..bb917f50 100644
--- a/src/redis.c
+++ b/src/redis.c
@@ -596,7 +596,7 @@ int serverCron(struct aeEventLoop *eventLoop, long long id, void *clientData) {
             }
             updateDictResizePolicy();
         }
-    } else {
+    } else if (!server.ds_enabled) {
         /* If there is not a background saving in progress check if
          * we have to save now */
          time_t now = time(NULL);
-- 
2.47.2