]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Fix caching logic
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 27 Aug 2019 18:24:26 +0000 (19:24 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Tue, 27 Aug 2019 18:24:26 +0000 (19:24 +0100)
lualib/lua_maps.lua

index 23e5cb942df926515d17ac712f4e7a23ac2b3208..c2f0e406cf437fdf295da1e68cd47b3984d725e6 100644 (file)
@@ -140,8 +140,8 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
   elseif type(opt) == 'table' then
     local k = lua_util.table_digest(opt)
     if maps_cache[k] then
-      rspamd_logger.infox(rspamd_config, 'reuse url for %s(%s)',
-          opt, mtype)
+      rspamd_logger.infox(rspamd_config, 'reuse url for complex map definition %s: %s',
+          k:sub(1,8), description)
 
       return maps_cache[k]
     end
@@ -155,6 +155,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
           if map then
             ret.__data = map
             setmetatable(ret, ret_mt)
+            maps_cache[k] = ret
             return ret
           end
         else
@@ -167,6 +168,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
           if map then
             ret.__data = map
             setmetatable(ret, ret_mt)
+            maps_cache[k] = ret
             return ret
           end
         end
@@ -181,6 +183,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
           if map then
             ret.__data = map
             setmetatable(ret, ret_mt)
+            maps_cache[k] = ret
             return ret
           end
         else
@@ -195,6 +198,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
           if map then
             ret.__data = map
             setmetatable(ret, ret_mt)
+            maps_cache[k] = ret
             return ret
           end
         end
@@ -209,6 +213,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
           if map then
             ret.__data = map
             setmetatable(ret, ret_mt)
+            maps_cache[k] = ret
             return ret
           end
         else
@@ -247,6 +252,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
               return nil
             end
 
+            maps_cache[k] = ret
             return ret
           else
             -- Empty map, huh?
@@ -265,6 +271,7 @@ local function rspamd_map_add_from_ucl(opt, mtype, description)
       if map then
         ret.__data = map
         setmetatable(ret, ret_mt)
+        maps_cache[k] = ret
         return ret
       end
     end -- opt[1]