[PATCH evolve-ext] inhibit: improve transaction marker perf
Durham Goode
durham at fb.com
Sun Nov 8 00:15:48 CST 2015
On 11/7/15 9:52 PM, Martin von Zweigbergk wrote:
>
>
> On Sat, Nov 7, 2015 at 5:21 PM Durham Goode <durham at fb.com
> <mailto:durham at fb.com>> wrote:
>
> # HG changeset patch
> # User Durham Goode <durham at fb.com <mailto:durham at fb.com>>
> # Date 1446945001 28800
> # Sat Nov 07 17:10:01 2015 -0800
> # Node ID 7c680f209f7af35c7c476eecc2f9eec13b32ad62
> # Parent 48547b4c77defdd17c670b1eb0eb94272edf0207
> inhibit: improve transaction marker perf
>
> The old algorithm was a revset "::X and obsolete()". This was
> inefficient because
> it requires walking all the way down the ancestor chain (since the
> revset did
> not know it could stop walking at public nodes).
>
>
> I was hoping to reproduce the slowness on the Mozilla repo (270k
> revisions), but "hg log -r '::tip and obsolete()'" runs in 180 ms. Do
> you have a better command for me to try? How many obsmarkers in the
> repo you tried it on?
You need to make sure you pass --hidden, otherwise the obsolete() revset
resolves to an empty set and tests against it are cheap.
I have 1500 obs markers, if that affects things.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20151107/474999bf/attachment.html>
More information about the Mercurial-devel
mailing list