MQ performance on large repo
Greg Ward
greg at gerg.ca
Tue Mar 2 14:27:03 CST 2010
On Mon, Mar 1, 2010 at 6:31 PM, Adrian Buehlmann <adrian at cadifra.com> wrote:
> If shortly tried to think about how it is possible to force duplicate
> entries in the fncache file with the current code and failed. But I
> could swear I saw it in the past. tonfa has made some nice refactorings
> in store.py though in the past, which IMHO seem to make it harder to get
> duplicates. Do you happen to know a use case that produces duplicate
> lines in fncache? (I guess I'm too lazy right now to see it)
Well, we must be missing something. I just re-ran the same cvs2hg
conversion three times, with hg 1.3, 1.4, and 1.5ish (current stable).
Result: highly redundant fncache every time.
Specifically, in every case:
* the new hg repo created by cvs2hg has 3741 files in .hg/store/data
* there are 3875 unique lines in .hg/store/fncache (sort -u | wc -l)
* there are 28354 total lines in .hg/store/fncache
Based on that, I conclude that strip's runtime will be dominated by
the time taken to read fncache for any repo created by cvs2hg with
Mercurial 1.3, 1.4, or 1.5. ;-(
Greg
More information about the Mercurial-devel
mailing list