summary refs log tree commit diff
path: root/synapse/storage
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-04-30 10:16:12 +0100
committerErik Johnston <erik@matrix.org>2015-04-30 10:16:12 +0100
commit1d7702833d27f2e87e6598b5de9aad878e716c4b (patch)
treef38bd329f3b2043353f105f3adcd2652c945c7ce /synapse/storage
parentCorrectly decode, for sqlite and postgres, rows from pushers table (diff)
downloadsynapse-1d7702833d27f2e87e6598b5de9aad878e716c4b.tar.xz
Make simple query rather than long one and then throw away half the results
Diffstat (limited to 'synapse/storage')
-rw-r--r--synapse/storage/room.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/synapse/storage/room.py b/synapse/storage/room.py
index 48ebb33057..2e77b9d79b 100644
--- a/synapse/storage/room.py
+++ b/synapse/storage/room.py
@@ -75,6 +75,16 @@ class RoomStore(SQLBaseStore):
             allow_none=True,
         )
 
+    def get_public_room_ids(self):
+        return self._simple_select_onecol(
+            table="rooms",
+            keyvalues={
+                "is_public": True,
+            },
+            retcol="room_id",
+            desc="get_public_room_ids",
+        )
+
     @defer.inlineCallbacks
     def get_rooms(self, is_public):
         """Retrieve a list of all public rooms.