From: Vsevolod Stakhov Date: Fri, 14 Dec 2018 09:13:00 +0000 (+0000) Subject: [Fix] Controller: Make save stats timer persistent X-Git-Tag: 1.9.0~435 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=286422f481088ca9d82b9609bfa21b9e9fc9176d;p=rspamd.git [Fix] Controller: Make save stats timer persistent Issue: #2680 --- diff --git a/src/controller.c b/src/controller.c index 4050ed13c..b8eface74 100644 --- a/src/controller.c +++ b/src/controller.c @@ -3914,6 +3914,14 @@ start_controller_worker (struct rspamd_worker *worker) rspamd_map_watch (worker->srv->cfg, ctx->ev_base, ctx->resolver, worker, TRUE); + + /* Schedule periodic stats saving, see #1823 */ + event_set (&ctx->save_stats_event, -1, EV_PERSIST, + rspamd_controller_stats_save_periodic, + ctx); + event_base_set (ctx->ev_base, &ctx->save_stats_event); + msec_to_tv (save_stats_interval, &stv); + evtimer_add (&ctx->save_stats_event, &stv); } else { rspamd_map_watch (worker->srv->cfg, ctx->ev_base, @@ -3922,13 +3930,6 @@ start_controller_worker (struct rspamd_worker *worker) rspamd_lua_run_postloads (ctx->cfg->lua_state, ctx->cfg, ctx->ev_base, worker); - /* Schedule periodic stats saving, see #1823 */ - evtimer_set (&ctx->save_stats_event, rspamd_controller_stats_save_periodic, - ctx); - event_base_set (ctx->ev_base, &ctx->save_stats_event); - msec_to_tv (save_stats_interval, &stv); - evtimer_add (&ctx->save_stats_event, &stv); - /* Start event loop */ event_base_loop (ctx->ev_base, 0); rspamd_worker_block_signals ();