Diff

mod_mam/mod_mam.lua @ 2724:9f17d0f28d77

mod_mam: Don't ask the storage backend to count all items when expiry is disabled
author Kim Alvefur <zash@zash.se>
date Wed, 26 Apr 2017 11:46:22 +0200
parent 2711:ff1f7e61517f
child 2725:210c3a7644cb
line wrap: on
line diff
--- a/mod_mam/mod_mam.lua	Fri Jun 23 16:03:11 2017 +0200
+++ b/mod_mam/mod_mam.lua	Wed Apr 26 11:46:22 2017 +0200
@@ -56,6 +56,8 @@
 	archive = module:require "fallback_archive";
 end
 
+local use_total = true;
+
 local cleanup;
 
 -- Handle prefs.
@@ -154,7 +156,7 @@
 		limit = qmax + 1;
 		before = before; after = after;
 		reverse = reverse;
-		total = true;
+		total = get_total;
 	});
 
 	if not data then
@@ -383,6 +385,10 @@
 		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