From: Vsevolod Stakhov Date: Wed, 25 Mar 2015 21:52:39 +0000 (+0000) Subject: Cache atom results. X-Git-Tag: 0.9.0~420 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=c27051a9738aa07cc1041e253d18fbacc9f51d98;p=rspamd.git Cache atom results. --- diff --git a/src/plugins/lua/spamassassin.lua b/src/plugins/lua/spamassassin.lua index 8aad56618..345e96b25 100644 --- a/src/plugins/lua/spamassassin.lua +++ b/src/plugins/lua/spamassassin.lua @@ -383,7 +383,12 @@ end local function process_atom(atom, task) local atom_cb = atoms[atom] if atom_cb then - return atom_cb(task) + local res = task:cache_get(atom) + if res < 0 then + res = atom_cb(task) + task:cache_set(atom, res) + end + return res else rspamd_logger.err('Cannot find atom ' .. atom) end