diff mercurial/localrepo.py @ 24378:9347c15d8136

revbranchcache: write cache even during read operations Previously we would only actually write the revbranchcache to disk if we were in the middle of a write operation (like commit). Now we will also write it during any read operation. The cache knows how to invalidate itself, so it shouldn't become corrupt if multiple writers try at once (and the write-on-read behavior/risk is the same as all our other caches).
author Durham Goode <durham@fb.com>
date Tue, 24 Feb 2015 18:43:31 -0800
parents 59cc09240afb
children 5859af34c5a6
line wrap: on
line diff
--- a/mercurial/localrepo.py	Tue Feb 10 20:06:12 2015 -0800
+++ b/mercurial/localrepo.py	Tue Feb 24 18:43:31 2015 -0800
@@ -303,7 +303,11 @@
         self.names = namespaces.namespaces()
 
     def close(self):
-        pass
+        self._writecaches()
+
+    def _writecaches(self):
+        if self._revbranchcache:
+            self._revbranchcache.write()
 
     def _restrictcapabilities(self, caps):
         # bundle2 is not ready for prime time, drop it unless explicitly