summary refs log tree commit diff
path: root/synapse/util/caches/descriptors.py
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2018-02-13 12:16:01 +0000
committerRichard van der Hoff <richard@matrix.org>2018-02-13 12:16:01 +0000
commita9b712e9dce119c65fe24913d2a79212ae07a354 (patch)
tree2c98b0b3d7d31c59ce41db257c3a18c5b3a2df03 /synapse/util/caches/descriptors.py
parentFactor out common code for search insert (diff)
parentMerge pull request #2857 from matrix-org/erikj/upload_store (diff)
downloadsynapse-a9b712e9dce119c65fe24913d2a79212ae07a354.tar.xz
Merge branch 'develop' into matthew/gin_work_mem
Diffstat (limited to 'synapse/util/caches/descriptors.py')
-rw-r--r--synapse/util/caches/descriptors.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/util/caches/descriptors.py b/synapse/util/caches/descriptors.py
index af65bfe7b8..bf3a66eae4 100644
--- a/synapse/util/caches/descriptors.py
+++ b/synapse/util/caches/descriptors.py
@@ -75,6 +75,7 @@ class Cache(object):
         self.cache = LruCache(
             max_size=max_entries, keylen=keylen, cache_type=cache_type,
             size_callback=(lambda d: len(d)) if iterable else None,
+            evicted_callback=self._on_evicted,
         )
 
         self.name = name
@@ -83,6 +84,9 @@ class Cache(object):
         self.thread = None
         self.metrics = register_cache(name, self.cache)
 
+    def _on_evicted(self, evicted_count):
+        self.metrics.inc_evictions(evicted_count)
+
     def check_thread(self):
         expected_thread = self.thread
         if expected_thread is None: