]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
Sync only one fuzzy worker, not all
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 7 Nov 2015 21:28:57 +0000 (21:28 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 7 Nov 2015 21:28:57 +0000 (21:28 +0000)
src/fuzzy_storage.c

index dd23c6112bfad5bc4d404dd2b15054938658ff4d..8c870b090f54966882ac1aa0c8a339e4e67fa7eb 100644 (file)
@@ -636,14 +636,16 @@ start_fuzzy (struct rspamd_worker *worker)
                ctx->keypair_cache = rspamd_keypair_cache_new (ctx->keypair_cache_size);
        }
 
-       rspamd_fuzzy_backend_sync (ctx->backend, ctx->expire, TRUE);
-       /* Timer event */
-       evtimer_set (&tev, sync_callback, worker);
-       event_base_set (ctx->ev_base, &tev);
-       /* Plan event with jitter */
-       next_check = rspamd_time_jitter (ctx->sync_timeout, 0);
-       double_to_tv (next_check, &tmv);
-       evtimer_add (&tev, &tmv);
+       if (worker->index == 0) {
+               rspamd_fuzzy_backend_sync (ctx->backend, ctx->expire, TRUE);
+               /* Timer event */
+               evtimer_set (&tev, sync_callback, worker);
+               event_base_set (ctx->ev_base, &tev);
+               /* Plan event with jitter */
+               next_check = rspamd_time_jitter (ctx->sync_timeout, 0);
+               double_to_tv (next_check, &tmv);
+               evtimer_add (&tev, &tmv);
+       }
 
        /* Register custom reload command for the control socket */
        rspamd_control_worker_add_cmd_handler (worker, RSPAMD_CONTROL_RELOAD,