diff --git a/synapse/util/caches/lrucache.py b/synapse/util/caches/lrucache.py
index 072f9a9d1904dd814be7f699bd78ca2c3b0d9d72..cf5fbb679c6fee4e75325dc82f91b2afc2209a5f 100644
--- a/synapse/util/caches/lrucache.py
+++ b/synapse/util/caches/lrucache.py
@@ -189,6 +189,8 @@ class LruCache(object):
                 for cb in node.callbacks:
                     cb()
             cache.clear()
+            if size_callback:
+                cached_cache_len[0] = 0
 
         @synchronized
         def cache_contains(key):