[PATCH STABLE] revset: have rev() drop out-of-range or filtered rev explicitly (issue4396)

Pierre-Yves David pierre-yves.david at ens-lyon.org
Thu Oct 23 07:34:57 CDT 2014



On 10/23/2014 05:00 AM, Yuya Nishihara wrote:
> On Mon, 20 Oct 2014 09:46:15 -0700, Pierre-Yves David wrote:
>> On 10/20/2014 06:02 AM, Yuya Nishihara wrote:
>>> On Mon, 20 Oct 2014 03:06:01 -0700, Pierre-Yves David wrote:
>>>> I've changed it to::
>>>>
>>>>        if l not in repo.changelog:
>>>>
>>>> And pushed the result to the clowncopter.
>>>
>>> Isn't it slower than "l in repo" for large number?
>>> revlog doesn't have  __contains__().
>>>
>>> revset #0: rev(210000)
>>> 0) wall 0.026161 comb 0.030000 user 0.030000 sys 0.000000 (best of 107)
>>> 1) wall 0.000045 comb 0.000000 user 0.000000 sys 0.000000 (best of 58973)
>>> 2) wall 0.000063 comb 0.000000 user 0.000000 sys 0.000000 (best of 42704)
>>> 3) wall 0.002724 comb 0.000000 user 0.000000 sys 0.000000 (best of 1060)
>>
>> gasp! I did not realised that. I switched it to `l not in
>> fullreposet(repo)` in a hurry. We should probably fix changelog
>> containment in 3.3. Thanks alot for double checking this, should not
>> have tried to get thing "better" (but I happy to have found a bug).
>
> Maybe new patch isn't pushed to clowncopter yet?
> The slow version was queued:

Something apparently went wrong durign my second push :-/ Can you issue 
a follow up?


-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list