[Bug 4782] New: 62371c539c89 regressed revset performance by 7x
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Tue Aug 18 18:49:17 UTC 2015
http://bz.selenic.com/show_bug.cgi?id=4782
Priority: normal
Bug ID: 4782
Keywords: regression
CC: mercurial-devel at selenic.com
Assignee: bugzilla at selenic.com
Summary: 62371c539c89 regressed revset performance by 7x
Severity: bug
Classification: Unclassified
OS: All
Reporter: gregory.szorc at gmail.com
Hardware: All
Status: UNCONFIRMED
Version: default branch
Component: Mercurial
Product: Mercurial
The following changeset regressed performance of `hg wip` on my Firefox
repository by 7x, going from ~6.6 to ~51s:
changeset: 35715:62371c539c89
user: Laurent Charignon <lcharignon at fb.com>
date: Fri Jun 19 20:28:52 2015 -0700
summary: revset: remove grandparent by using reachableroots
Actual revset used is:
(parents(not public()) or not public() or . or (head() and branch(default)))
and (not obsolete() or unstable()^) and not closed()
Here is profile results of a partial run:
CallCount Recursive Total(s) Inline(s) module:lineno(function)
17121951 17116186 20.9847 9.8474
mercurial.revset:3080(_iterfilter)
16751603 16744244 20.5347 3.0723
mercurial.revset:3146(_iterordered)
17088101 103 4.3506 3.0350
mercurial.revset:2947(<lambda>)
34153513 0 2.4568 2.4568 <method '__contains__' of
'set' objects>
17072879 0 2.3720 2.3720
mercurial.revset:3590(_iterfilter)
337454 337449 0.3873 0.0572
mercurial.revset:3283(arbitraryordergen)
420806 0 0.0542 0.0542 <max>
13 0 0.0364 0.0364 <method 'reachableroots' of
'parsers.index' objects>
6625 0 0.1223 0.0340
mercurial.ancestor:332(__contains__)
23813 0 0.0334 0.0334 <_heapq.heappop>
7830 0 0.0590 0.0285
mercurial.obsolete:148(_fm0readmarkers)
23997 0 0.0282 0.0282 <_heapq.heappush>
7293 0 0.0212 0.0212 <method 'get' of
'parsers.index' objects>
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list