summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2016-06-03 11:50:30 +0100
committerErik Johnston <erik@matrix.org>2016-06-03 11:50:30 +0100
commitd06f2a229e8dd2e71eb02c4b30d1863d1edc4455 (patch)
treec9b8ec58a9c39951521f40f113881d40da276733 /synapse
parentMerge pull request #827 from matrix-org/markjh/more_slaved_methods (diff)
parentMake get_joined_hosts_for_room use get_users_in_room (diff)
downloadsynapse-d06f2a229e8dd2e71eb02c4b30d1863d1edc4455.tar.xz
Merge pull request #828 from matrix-org/erikj/joined_hosts_for_room
Make get_joined_hosts_for_room use get_users_in_room
Diffstat (limited to 'synapse')
-rw-r--r--synapse/storage/roommember.py19
1 files changed, 3 insertions, 16 deletions
diff --git a/synapse/storage/roommember.py b/synapse/storage/roommember.py
index 41b395e07c..64b4bd371b 100644
--- a/synapse/storage/roommember.py
+++ b/synapse/storage/roommember.py
@@ -238,23 +238,10 @@ class RoomMemberStore(SQLBaseStore):
 
         return results
 
-    @cached(max_entries=5000)
+    @cachedInlineCallbacks(max_entries=5000)
     def get_joined_hosts_for_room(self, room_id):
-        return self.runInteraction(
-            "get_joined_hosts_for_room",
-            self._get_joined_hosts_for_room_txn,
-            room_id,
-        )
-
-    def _get_joined_hosts_for_room_txn(self, txn, room_id):
-        rows = self._get_members_rows_txn(
-            txn,
-            room_id, membership=Membership.JOIN
-        )
-
-        joined_domains = set(get_domain_from_id(r["user_id"]) for r in rows)
-
-        return joined_domains
+        user_ids = yield self.get_users_in_room(room_id)
+        defer.returnValue(set(get_domain_from_id(uid) for uid in user_ids))
 
     def _get_members_events_txn(self, txn, room_id, membership=None, user_id=None):
         rows = self._get_members_rows_txn(