summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2016-01-28 18:20:00 +0000
committerErik Johnston <erik@matrix.org>2016-01-28 18:20:00 +0000
commit467c27a1f90b873d6838ad1351399551cfa9cc07 (patch)
treead9fbdf9eaf03703deac65d06f300708b9736be1
parent If the same as the earliest key, assume nothing has changed. (diff)
downloadsynapse-467c27a1f90b873d6838ad1351399551cfa9cc07.tar.xz
Amalgamate tags and account data stream caches
-rw-r--r--synapse/storage/account_data.py3
-rw-r--r--synapse/storage/tags.py18
2 files changed, 9 insertions, 12 deletions
diff --git a/synapse/storage/account_data.py b/synapse/storage/account_data.py
index 88404059e8..822c8bbe00 100644
--- a/synapse/storage/account_data.py
+++ b/synapse/storage/account_data.py
@@ -28,7 +28,8 @@ class AccountDataStore(SQLBaseStore):
         super(AccountDataStore, self).__init__(hs)
 
         self._account_data_stream_cache = StreamChangeCache(
-            "AccountDataChangeCache", self._account_data_id_gen.get_max_token(None),
+            "AccountDataAndTagsChangeCache",
+            self._account_data_id_gen.get_max_token(None),
             max_size=1000,
         )
 
diff --git a/synapse/storage/tags.py b/synapse/storage/tags.py
index 75ce04092d..e1a9c0c261 100644
--- a/synapse/storage/tags.py
+++ b/synapse/storage/tags.py
@@ -15,7 +15,6 @@
 
 from ._base import SQLBaseStore
 from synapse.util.caches.descriptors import cached
-from synapse.util.caches.stream_change_cache import StreamChangeCache
 from twisted.internet import defer
 
 import ujson as json
@@ -25,14 +24,6 @@ logger = logging.getLogger(__name__)
 
 
 class TagsStore(SQLBaseStore):
-    def __init__(self, hs):
-        super(TagsStore, self).__init__(hs)
-
-        self._tags_stream_cache = StreamChangeCache(
-            "TagsChangeCache", self._account_data_id_gen.get_max_token(None),
-            max_size=1000,
-        )
-
     def get_max_account_data_stream_id(self):
         """Get the current max stream id for the private user data stream
 
@@ -88,7 +79,9 @@ class TagsStore(SQLBaseStore):
             room_ids = [row[0] for row in txn.fetchall()]
             return room_ids
 
-        changed = self._tags_stream_cache.has_entity_changed(user_id, int(stream_id))
+        changed = self._account_data_stream_cache.has_entity_changed(
+            user_id, int(stream_id)
+        )
         if not changed:
             defer.returnValue({})
 
@@ -189,7 +182,10 @@ class TagsStore(SQLBaseStore):
             next_id(int): The the revision to advance to.
         """
 
-        txn.call_after(self._tags_stream_cache.entity_has_changed, user_id, next_id)
+        txn.call_after(
+            self._account_data_stream_cache.entity_has_changed,
+            user_id, next_id
+        )
 
         update_max_id_sql = (
             "UPDATE account_data_max_stream_id"