Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/localrepo.py @ 20884:2efdd186925d
caches: invalidate store caches when lock is taken
The fncache was not being properly invalidated each time the lock was taken, so
in theory it could contain old data from prior to the caller having the lock.
This changes it to be invalidated as soon as the lock is taken (same as all our
other caches).
author | Durham Goode <durham@fb.com> |
---|---|
date | Mon, 24 Mar 2014 15:35:07 -0700 |
parents | cd443c7589cc |
children | e10000369b47 |
comparison
equal
deleted
inserted
replaced
20883:cd443c7589cc | 20884:2efdd186925d |
---|---|
994 try: | 994 try: |
995 delattr(unfiltered, k) | 995 delattr(unfiltered, k) |
996 except AttributeError: | 996 except AttributeError: |
997 pass | 997 pass |
998 self.invalidatecaches() | 998 self.invalidatecaches() |
999 self.store.invalidatecaches() | |
999 | 1000 |
1000 def invalidateall(self): | 1001 def invalidateall(self): |
1001 '''Fully invalidates both store and non-store parts, causing the | 1002 '''Fully invalidates both store and non-store parts, causing the |
1002 subsequent operation to reread any outside changes.''' | 1003 subsequent operation to reread any outside changes.''' |
1003 # extension should hook this to invalidate its caches | 1004 # extension should hook this to invalidate its caches |