summaryrefslogtreecommitdiffstats
path: root/src/sync-mode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sync-mode.c')
-rw-r--r--src/sync-mode.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/sync-mode.c b/src/sync-mode.c
index 8433532..38ab016 100644
--- a/src/sync-mode.c
+++ b/src/sync-mode.c
@@ -244,8 +244,12 @@ static int local_handler_sync(int fd, int type, void *data)
}
break;
case COMMIT:
- dlog(STATE(log), "[REQ] commit external cache to master table");
- cache_commit(STATE_SYNC(external));
+ ret = fork();
+ if (ret == 0) {
+ dlog(STATE(log), "[REQ] committing external cache");
+ cache_commit(STATE_SYNC(external));
+ exit(EXIT_SUCCESS);
+ }
break;
case FLUSH_CACHE:
dlog(STATE(log), "[REQ] flushing caches");