aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_mam/mod_mam.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2017-04-26 11:46:22 +0200
committerKim Alvefur <zash@zash.se>2017-04-26 11:46:22 +0200
commit3431032994baafdf6345ea3d22a447eee7e9197d (patch)
tree546bb0b0356dd8f77c5a1937e157f46ce52b9659 /plugins/mod_mam/mod_mam.lua
parentf0abacc21570cef472c5bc7ec09ea35038f3f0aa (diff)
downloadprosody-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.lua8
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