Patrick Mezard <patrick@mezard.eu> [Wed, 11 Apr 2012 11:14:07 +0200] rev 16406
graphlog: pass changesets to revset.match() in changelog order
Running:
$ time hg debugrevspec 'user(mpm)' | wc
on Mercurial repository takes 1.0s with a regular version and 1.8s if
commands.debugrevspec() is patched to pass revisions to revset.match() from tip
to 0.
Depending on what we expect from the revset API and caller wisdom, we might
want to push this change in revset.match() later.
Patrick Mezard <patrick@mezard.eu> [Wed, 11 Apr 2012 11:07:30 +0200] rev 16405
graphlog: refactor revset() to return revisions
When --follow and --rev are passed, --follow actual behaviour depends on the
input revision sequence defined by --rev. If --rev is not passed, the default
revision sequence depends on the presence of --follow. It means the revision
sequence generation is part of log logic and must be wrapped. The issue
described above is fixed in following patches.
Bryan O'Sullivan <bryano@fb.com> [Thu, 12 Apr 2012 15:21:54 -0700] rev 16404
store: speed up read and write of large fncache files
In my tests of an fncache containing 300,000 entries, this improves
read time from 567ms to 307, and write time from 1328ms to 533.
These numbers aren't so great, since the fncache file is only 17MB
in size, but they're an improvement.
Bryan O'Sullivan <bryano@fb.com> [Thu, 12 Apr 2012 15:21:52 -0700] rev 16403
perf: time fncache read and write performance