diff -r 72bccc1f26b1 -r 2b31d8636f25 mercurial/localrepo.py --- a/mercurial/localrepo.py Sat Sep 26 00:10:48 2015 -0400 +++ b/mercurial/localrepo.py Tue Sep 29 21:57:08 2015 +0900 @@ -434,7 +434,10 @@ heads.append(n) return heads - @storecache('phaseroots') + # _phaserevs and _phasesets depend on changelog. what wee need is to + # call _phasecache.invalidate() if '00changelog.i' was changed, but it + # can't be easily expressed in filecache mechanism. + @storecache('phaseroots', '00changelog.i') def _phasecache(self): return phases.phasecache(self, self._phasedefaults)