aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
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
commit4e955bb01926b7fafe8e3d892807833382e50634 (patch)
tree546bb0b0356dd8f77c5a1937e157f46ce52b9659 /plugins
parent1ad8af8bc20f84a2cac3394aa6255f1e52423289 (diff)
downloadprosody-4e955bb01926b7fafe8e3d892807833382e50634.tar.gz
prosody-4e955bb01926b7fafe8e3d892807833382e50634.zip
mod_mam: Don't ask the storage backend to count all items when expiry is disabled
Diffstat (limited to 'plugins')
-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