From 0f80039eec1f47d882970529124dfe07ad669b9c Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Thu, 20 Oct 2016 19:07:57 +0100 Subject: [PATCH] [Fix] Fix periodic events and redis --- src/controller.c | 2 -- src/fuzzy_storage.c | 2 -- src/libserver/worker_util.c | 2 ++ src/lua/lua_config.c | 3 ++- src/worker.c | 2 -- 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/controller.c b/src/controller.c index 4a1df5aff..4fa2b137a 100644 --- a/src/controller.c +++ b/src/controller.c @@ -3131,8 +3131,6 @@ start_controller_worker (struct rspamd_worker *worker) rspamd_upstreams_library_config (worker->srv->cfg, worker->srv->cfg->ups_ctx, ctx->ev_base, ctx->resolver->r); - rspamd_redis_pool_config (worker->srv->cfg->redis_pool, - worker->srv->cfg, ctx->ev_base); /* Maps events */ rspamd_map_watch (worker->srv->cfg, ctx->ev_base, ctx->resolver); rspamd_symbols_cache_start_refresh (worker->srv->cfg->cache, ctx->ev_base); diff --git a/src/fuzzy_storage.c b/src/fuzzy_storage.c index 7ee22c38c..47173ae07 100644 --- a/src/fuzzy_storage.c +++ b/src/fuzzy_storage.c @@ -2263,8 +2263,6 @@ start_fuzzy (struct rspamd_worker *worker) worker->srv->cfg); rspamd_upstreams_library_config (worker->srv->cfg, ctx->cfg->ups_ctx, ctx->ev_base, ctx->resolver->r); - rspamd_redis_pool_config (worker->srv->cfg->redis_pool, - worker->srv->cfg, ctx->ev_base); /* * Open DB and perform VACUUM diff --git a/src/libserver/worker_util.c b/src/libserver/worker_util.c index 056177e1c..16e08eb31 100644 --- a/src/libserver/worker_util.c +++ b/src/libserver/worker_util.c @@ -279,6 +279,8 @@ rspamd_prepare_worker (struct rspamd_worker *worker, const char *name, rspamd_worker_init_signals (worker, ev_base); rspamd_control_worker_add_default_handler (worker, ev_base); + rspamd_redis_pool_config (worker->srv->cfg->redis_pool, + worker->srv->cfg, ev_base); /* Accept all sockets */ if (accept_handler) { diff --git a/src/lua/lua_config.c b/src/lua/lua_config.c index d7ddae802..dc1371013 100644 --- a/src/lua/lua_config.c +++ b/src/lua/lua_config.c @@ -1994,7 +1994,7 @@ lua_periodic_callback (gint unused_fd, short what, gpointer ud) struct timeval tv; struct rspamd_lua_periodic *periodic = ud; struct rspamd_config **pcfg; - struct ev_base **pev_base; + struct event_base **pev_base; lua_State *L; gboolean plan_more = FALSE; @@ -2005,6 +2005,7 @@ lua_periodic_callback (gint unused_fd, short what, gpointer ud) *pcfg = periodic->cfg; pev_base = lua_newuserdata (L, sizeof (*pev_base)); rspamd_lua_setclass (L, "rspamd{ev_base}", -1); + *pev_base = periodic->ev_base; if (lua_pcall (L, 2, 1, 0) != 0) { msg_info ("call to periodic failed: %s", lua_tostring (L, -1)); diff --git a/src/worker.c b/src/worker.c index 03ada9ab3..fcf4e2c73 100644 --- a/src/worker.c +++ b/src/worker.c @@ -589,8 +589,6 @@ start_worker (struct rspamd_worker *worker) ctx->ev_base, ctx->resolver->r); rspamd_monitored_ctx_config (worker->srv->cfg->monitored_ctx, worker->srv->cfg, ctx->ev_base, ctx->resolver->r); - rspamd_redis_pool_config (worker->srv->cfg->redis_pool, - worker->srv->cfg, ctx->ev_base); /* XXX: stupid default */ ctx->keys_cache = rspamd_keypair_cache_new (256); -- 2.39.5