[PATCH 11 of 12] rollback: invalidate dirstate through the filecache

Idan Kamara idankk86 at gmail.com
Tue Jan 8 13:34:08 CST 2013


On Tue, Jan 8, 2013 at 9:23 PM, Pierre-Yves David <
pierre-yves.david at ens-lyon.org> wrote:
>
>
> On 8 janv. 2013, at 20:10, Idan Kamara wrote:
>
> > On Tue, Jan 8, 2013 at 8:00 PM, Pierre-Yves David
> > <pierre-yves.david at logilab.fr> wrote:
> > >
> > > On Mon, Dec 17, 2012 at 05:35:36PM +0200, Idan Kamara wrote:
> > > > # HG changeset patch
> > > > # User Idan Kamara <idankk86 at gmail.com>
> > > > # Date 1355568420 -7200
> > > > # Branch stable
> > > > # Node ID dfe35839906aaf57d18eeebfc529425de7c0ac85
> > > > # Parent  9157ffe3d66d41bb7ea3cfa062d775a87731206a
> > > > rollback: invalidate dirstate through the filecache
> > > >
> > > > There's no reason to use invalidate on the dirstate instance since
> > > > .hg/dirstate
> > > > was just replaced and the filecache will spot this and reload it.
> > > >
> > > > diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
> > > > --- a/mercurial/localrepo.py
> > > > +++ b/mercurial/localrepo.py
> > > > @@ -1009,6 +1009,7 @@
> > > >                        parents[1] not in self.changelog.nodemap)
> > > >          if parentgone:
> > > >              util.rename(self.join('undo.dirstate'),
> > > > self.join('dirstate'))
> > > > +            self.invalidatedirstate()
> > > >              try:
> > > >                  branch = self.opener.read('undo.branch')
> > > >                  self.dirstate.setbranch(encoding.tolocal(branch))
> > >
> > > What is this this extra call for ? You description only talk about the
> > > removed call bellow.
> >
> > Which call? To dirstate.setbranch?
>
> The:
> +            self.invalidatedirstate()

it replaces the old invalidate call.

But on second thought I might drop this patch altogether
since it causes a stat on .hg/dirstate when it's not
really needed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20130108/18125ae0/attachment.html>


More information about the Mercurial-devel mailing list