diff options
author | Jason Little <realtyem@gmail.com> | 2023-06-14 03:42:18 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-14 09:42:18 +0100 |
commit | 21fea6b7493533985f7fa14924949514b5a356e2 (patch) | |
tree | 757eb51f5248c1f87218fc20e578d35d4c57a151 /synapse/util/caches/lrucache.py | |
parent | Document `looping_call()` functionality that will wait for the given function... (diff) | |
download | synapse-21fea6b7493533985f7fa14924949514b5a356e2.tar.xz |
Prefill events after invalidate not before when persisting events (#15758)
Fixes #15757
Diffstat (limited to 'synapse/util/caches/lrucache.py')
-rw-r--r-- | synapse/util/caches/lrucache.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/util/caches/lrucache.py b/synapse/util/caches/lrucache.py index 6137c85e10..be6554319a 100644 --- a/synapse/util/caches/lrucache.py +++ b/synapse/util/caches/lrucache.py @@ -842,7 +842,13 @@ class AsyncLruCache(Generic[KT, VT]): return self._lru_cache.get(key, update_metrics=update_metrics) async def set(self, key: KT, value: VT) -> None: - self._lru_cache.set(key, value) + # This will add the entries in the correct order, local first external second + self.set_local(key, value) + await self.set_external(key, value) + + async def set_external(self, key: KT, value: VT) -> None: + # This method should add an entry to any configured external cache, in this case noop. + pass def set_local(self, key: KT, value: VT) -> None: self._lru_cache.set(key, value) |