diff options
author | Paweł Chmielowski <pchmielowski@process-one.net> | 2020-03-17 14:35:43 +0100 |
---|---|---|
committer | Paweł Chmielowski <pchmielowski@process-one.net> | 2020-03-17 14:35:43 +0100 |
commit | d8899ca9acc7e2b198d1c03f9534ca46b4f524b2 (patch) | |
tree | 5e88d10009b5b5b5d528577c8ac04e4234c61f75 /src/mod_shared_roster_mnesia.erl | |
parent | Fix 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.erl | 6 |
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', |