[PATCH] localrepo: introduce persistent caching of revset revision's branch names
Matt Mackall
mpm at selenic.com
Tue Oct 14 19:58:36 CDT 2014
On Tue, 2014-10-14 at 17:51 -0700, Pierre-Yves David wrote:
>
> On 10/14/2014 05:43 PM, Matt Mackall wrote:
> > On Wed, 2014-10-15 at 02:33 +0200, Mads Kiilerich wrote:
> >> # HG changeset patch
> >> # User Mads Kiilerich <madski at unity3d.com>
> >> # Date 1413333190 -7200
> >> # Wed Oct 15 02:33:10 2014 +0200
> >> # Node ID 85189122b49b31dddbcddb7c0925afa019dc4403
> >> # Parent 48c0b101a9de1fdbd638daa858da845cd05a6be7
> >> localrepo: introduce persistent caching of revset revision's branch names
> >>
> >> It is expensive to create a changectx and extract the branch name. That shows
> >> up when filtering on branches in revsets.
> >>
> >> To speed things up, cache the results on disk. To avoid using too much space,
> >> all branch names are only stored once and each revision references one of these
> >> names. To verify that the cache is valid, we also store the tip hash in the
> >> cache file.
> >
> > If we're going to add such a cache, I think it needs to not need
> > rebuilding across a strip.
>
> I'm not sure I get you. Do you mean you want the cache to be permanent
> (so using hash as key instead of rev?) Or do you want it to to be
> properly invalidated in case of strip (some kind of cache key) or any of
> the previous or something else.
If it takes a minute to build the cache, and takes a minute to rebuild
it after strip.. then it needs rethinking.
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial-devel
mailing list