diff options
author | Erik Johnston <erik@matrix.org> | 2016-12-12 14:41:51 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2016-12-12 14:41:51 +0000 |
commit | 09cbcb78d3f474ada72d604a24a44c91f2fdb6fe (patch) | |
tree | 4ec07e03d751f3c2007db333abde79f13683639a /synapse | |
parent | Notify replication. Use correct network_id (diff) | |
download | synapse-09cbcb78d3f474ada72d604a24a44c91f2fdb6fe.tar.xz |
Add cache to get_public_room_ids_at_stream_id
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/replication/slave/storage/room.py | 3 | ||||
-rw-r--r-- | synapse/storage/room.py | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/synapse/replication/slave/storage/room.py b/synapse/replication/slave/storage/room.py index 23c613863f..6df9a25ef3 100644 --- a/synapse/replication/slave/storage/room.py +++ b/synapse/replication/slave/storage/room.py @@ -15,6 +15,7 @@ from ._base import BaseSlavedStore from synapse.storage import DataStore +from synapse.storage.room import RoomStore from ._slaved_id_tracker import SlavedIdTracker @@ -30,7 +31,7 @@ class RoomStore(BaseSlavedStore): DataStore.get_current_public_room_stream_id.__func__ ) get_public_room_ids_at_stream_id = ( - DataStore.get_public_room_ids_at_stream_id.__func__ + RoomStore.__dict__["get_public_room_ids_at_stream_id"] ) get_public_room_ids_at_stream_id_txn = ( DataStore.get_public_room_ids_at_stream_id_txn.__func__ diff --git a/synapse/storage/room.py b/synapse/storage/room.py index 36aa8c5f83..8a2fe2fdf5 100644 --- a/synapse/storage/room.py +++ b/synapse/storage/room.py @@ -16,6 +16,7 @@ from twisted.internet import defer from synapse.api.errors import StoreError +from synapse.util.caches.descriptors import cached from ._base import SQLBaseStore from .engines import PostgresEngine, Sqlite3Engine @@ -346,6 +347,7 @@ class RoomStore(SQLBaseStore): def get_current_public_room_stream_id(self): return self._public_room_id_gen.get_current_token() + @cached(num_args=2, max_entries=100) def get_public_room_ids_at_stream_id(self, stream_id, network_tuple): """Get pulbic rooms for a particular list, or across all lists. |