[PATCH] revset: improve performance of _generatorset.__contains__ (issue 4201)

Durham Goode durham at fb.com
Tue Mar 25 12:42:43 CDT 2014

On 3/24/14 8:01 PM, "Gregory Szorc" <gregory.szorc at gmail.com> wrote:

># HG changeset patch
># User Gregory Szorc <gregory.szorc at gmail.com>
># Date 1395716418 25200
>#      Mon Mar 24 20:00:18 2014 -0700
># Node ID 6f64e244c57706cfb123c32c4fadef63690eed40
># Parent  3879ac3858ffd9bb46e19fcc3a2b31d7bb2b54c5
>revset: improve performance of _generatorset.__contains__ (issue 4201)

Looks good to me.  I tried it in our repo using this revset:
(children(ancestor(X, Y)) and ::(X)):: , which is what rebase does

A recent version of @ takes 40 seconds
With this patch it takes 20 seconds
With 2.9 it takes 10 seconds

So there's still room for improvement.

I'm wondering why this didn't show up more brightly on our internal charts

More information about the Mercurial-devel mailing list