[PATCH 0 of 3] log: speed up hg log for untracked files
S Muralidhar
smuralid at yahoo.com
Thu Sep 13 17:41:25 UTC 2012
This patch series is an attempt to speed up hg log for untracked files.
The first two patches add methods to the different stores (basicstore and fncachestore) to quickly check if the store knows about a given path. The third patch uses this method to see if a file with no revlog is not a directory, in which case the slowpath can be avoided.
Timings: The following are the hg log timings on a few files/dirs in my hg repo before and after this change.
Existing file: hg log i-l1 --time README
Before: real 0.030 secs
After: real 0.030 secs
Non-existing file: hg log -l1 --time abc
Before: real 1.390 secs
After: real 0.030 secs
Existing directory: hg log -l1 --time mercurial
Before: real 1.450 secs
After: real 1.450 secs
So, hg log on untracked files is much faster now. The other timings stay the same (hg log on directories is still slow, but that's another problem to tackle)
More information about the Mercurial-devel
mailing list