summaryrefslogtreecommitdiff
path: root/src/mod_shared_roster_mnesia.erl
diff options
context:
space:
mode:
authorPaweł Chmielowski <pchmielowski@process-one.net>2020-03-17 14:35:43 +0100
committerPaweł Chmielowski <pchmielowski@process-one.net>2020-03-17 14:35:43 +0100
commitd8899ca9acc7e2b198d1c03f9534ca46b4f524b2 (patch)
tree5e88d10009b5b5b5d528577c8ac04e4234c61f75 /src/mod_shared_roster_mnesia.erl
parentFix issue with family field on cockroachdb (diff)
Add cache to mod_shared_roster
This should help with excessive queries that sql backend generates Should fix issue #3158.
Diffstat (limited to 'src/mod_shared_roster_mnesia.erl')
-rw-r--r--src/mod_shared_roster_mnesia.erl6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mod_shared_roster_mnesia.erl b/src/mod_shared_roster_mnesia.erl
index 05faa7a6..2af945e6 100644
--- a/src/mod_shared_roster_mnesia.erl
+++ b/src/mod_shared_roster_mnesia.erl
@@ -32,7 +32,7 @@
get_user_groups/2, get_group_explicit_users/2,
get_user_displayed_groups/3, is_user_in_group/3,
add_user_to_group/3, remove_user_from_group/3, import/3]).
--export([need_transform/1, transform/1]).
+-export([need_transform/1, transform/1, use_cache/1]).
-include("mod_roster.hrl").
-include("mod_shared_roster.hrl").
@@ -56,6 +56,10 @@ list_groups(Host) ->
[{#sr_group{group_host = {'$1', '$2'}, _ = '_'},
[{'==', '$2', Host}], ['$1']}]).
+-spec use_cache(binary()) -> boolean().
+use_cache(_Host) ->
+ false.
+
groups_with_opts(Host) ->
Gs = mnesia:dirty_select(sr_group,
[{#sr_group{group_host = {'$1', Host}, opts = '$2',