From: Vsevolod Stakhov Date: Fri, 12 Feb 2016 16:27:25 +0000 (+0000) Subject: Don't fail stats when pre-results are set X-Git-Tag: 1.2.0~250 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=ad06636cc54ee400e2ca90b685296c153a3add7a;p=rspamd.git Don't fail stats when pre-results are set --- diff --git a/src/libstat/learn_cache/redis_cache.c b/src/libstat/learn_cache/redis_cache.c index ec2203463..47bfd89a6 100644 --- a/src/libstat/learn_cache/redis_cache.c +++ b/src/libstat/learn_cache/redis_cache.c @@ -270,6 +270,10 @@ rspamd_stat_cache_redis_runtime (struct rspamd_task *task, return NULL; } + if (task->tokens == NULL || task->tokens->len == 0) { + return NULL; + } + if (learn) { up = rspamd_upstream_get (ctx->write_servers, RSPAMD_UPSTREAM_MASTER_SLAVE, @@ -322,7 +326,10 @@ rspamd_stat_cache_redis_check (struct rspamd_task *task, gchar *h; h = rspamd_mempool_get_variable (task->task_pool, "words_hash"); - g_assert (h != NULL); + + if (h == NULL) { + return RSPAMD_LEARN_INGORE; + } double_to_tv (rt->ctx->timeout, &tv); diff --git a/src/libstat/learn_cache/sqlite3_cache.c b/src/libstat/learn_cache/sqlite3_cache.c index 288cad0ee..41731fa10 100644 --- a/src/libstat/learn_cache/sqlite3_cache.c +++ b/src/libstat/learn_cache/sqlite3_cache.c @@ -183,6 +183,10 @@ rspamd_stat_cache_sqlite3_check (struct rspamd_task *task, gint rc; gint64 flag; + if (task->tokens == NULL || task->tokens->len == 0) { + return RSPAMD_LEARN_INGORE; + } + if (ctx != NULL && ctx->db != NULL) { out = rspamd_mempool_alloc (task->task_pool, rspamd_cryptobox_HASHBYTES); @@ -223,9 +227,6 @@ rspamd_stat_cache_sqlite3_check (struct rspamd_task *task, return RSPAMD_LEARN_UNLEARN; } } - else { - - } } return RSPAMD_LEARN_OK; @@ -242,7 +243,10 @@ rspamd_stat_cache_sqlite3_learn (struct rspamd_task *task, gint64 flag; h = rspamd_mempool_get_variable (task->task_pool, "words_hash"); - g_assert (h != NULL); + + if (h == NULL) { + return RSPAMD_LEARN_INGORE; + } flag = !!is_spam ? 1 : 0;