diff -r 3a6ddacb7198 -r a464deecc9dd mercurial/phases.py --- a/mercurial/phases.py Thu Dec 20 15:32:42 2012 +0100 +++ b/mercurial/phases.py Thu Dec 20 17:14:07 2012 +0100 @@ -249,6 +249,7 @@ if targetphase != 0: self.retractboundary(repo, targetphase, delroots) obsolete.clearobscaches(repo) + repo.filteredrevcache.clear() def retractboundary(self, repo, targetphase, nodes): # Be careful to preserve shallow-copied values: do not update @@ -267,6 +268,7 @@ currentroots.intersection_update(ctx.node() for ctx in ctxs) self._updateroots(targetphase, currentroots) obsolete.clearobscaches(repo) + repo.filteredrevcache.clear() def advanceboundary(repo, targetphase, nodes): """Add nodes to a phase changing other nodes phases if necessary.