[issue548] Performance in repository having large revisions

Shun-ichi Goto mercurial-bugs at selenic.com
Sat Apr 28 02:04:32 CDT 2007


New submission from Shun-ichi Goto <shunichi.goto at gmail.com>:

In the repository which has 81043 revisions,
"hg log -l 1" or "hg parent" takes 4 or more seconds in my environment.
I feel it's very slow.

Result of 'time hg parent' and 'time hg log -l 1':
  hg parent  4.44s user 0.13s system 99% cpu 4.579 total
  hg log -l 1  4.74s user 0.13s system 99% cpu 4.880 total

"hg --profile log -l 1" says revlog.heads() consumes almost of the time.
It seems that getting tag of the revision requires heads and heads are
recalculated through 81043 revs.  Is it nessesary work?
I guess the cost above can be shrinked by cacheing or managing heads
information.

NOTE: The repository I used is a converted repo from emacs.
http://hg.intevation.org/emacs/

----------
files: hg-log-profile.txt
messages: 3028
nosy: gotoh
priority: wish
status: unread
title: Performance in repository having large revisions
topic: performance

____________________________________________________
Mercurial issue tracker <mercurial-bugs at selenic.com>
<http://www.selenic.com/mercurial/bts/issue548>
____________________________________________________
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: hg-log-profile.txt
Url: http://selenic.com/pipermail/mercurial-devel/attachments/20070428/b675c9c0/attachment.txt 


More information about the Mercurial-devel mailing list