diff options
author | Kim Alvefur <zash@zash.se> | 2017-04-26 11:46:22 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2017-04-26 11:46:22 +0200 |
commit | 3431032994baafdf6345ea3d22a447eee7e9197d (patch) | |
tree | 546bb0b0356dd8f77c5a1937e157f46ce52b9659 /plugins/mod_mam/mod_mam.lua | |
parent | f0abacc21570cef472c5bc7ec09ea35038f3f0aa (diff) | |
download | prosody-3431032994baafdf6345ea3d22a447eee7e9197d.tar.gz prosody-3431032994baafdf6345ea3d22a447eee7e9197d.zip |
mod_mam: Don't ask the storage backend to count all items when expiry is disabled
Diffstat (limited to 'plugins/mod_mam/mod_mam.lua')
-rw-r--r-- | plugins/mod_mam/mod_mam.lua | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/plugins/mod_mam/mod_mam.lua b/plugins/mod_mam/mod_mam.lua index 0c35f43f..f46d3818 100644 --- a/plugins/mod_mam/mod_mam.lua +++ b/plugins/mod_mam/mod_mam.lua @@ -52,6 +52,8 @@ if archive.name == "null" or not archive.find then archive = module:require "fallback_archive"; end +local use_total = true; + local cleanup; -- Handle prefs. @@ -137,7 +139,7 @@ module:hook("iq-set/self/"..xmlns_mam..":query", function(event) limit = qmax + 1; before = before; after = after; reverse = reverse; - total = true; + total = get_total; }); if not data then @@ -359,6 +361,10 @@ if cleanup_after ~= "never" then end return math.random(cleanup_interval, cleanup_interval * 2); end); +else + -- Don't ask the backend to count the potentially unbounded number of items, + -- it'll get slow. + use_total = false; end -- Stanzas sent by local clients |