The performance of "hg status" with the largefiles extension enabled is very bad, especially on largefiles repositories. For our repository, if I run "hg status" without the largefiles extension enabled or being required: real 0m0.494s user 0m0.390s sys 0m0.100s If I enable the largefiles extension: real 0m2.230s user 0m2.035s sys 0m0.191s So with the largefiles extension enabled, "hg status" is clearly about 4.5 times slower than without. I actually have a patch for this problem that I will soon send, but I thought it would be good to document the case here.
Correction: "especially on largefiles repositories" should read: "especially on large repositories"
I am now about to send the patch for this issue. The performance now on our repository with largefiles enabled is between: real 0m0.551s user 0m0.428s sys 0m0.120s and real 0m0.788s user 0m0.603s sys 0m0.181s depending on how dirty the working copy is (the latter is definitely a worst-case).
Marking this as in-progress. Patch sent to mercurial-devel list: http://www.selenic.com/pipermail/mercurial-devel/2011-December/036149.html
Fixed by http://selenic.com/repo/hg/rev/74e691b141c4 Na'Tosha Bard <natosha@unity3d.com> largefiles: optimize performance of status on largefiles repos (issue3136) (please test the fix)
--- Bug imported by bugzilla@serpentine.com 2012-05-12 09:25 EDT --- This bug was previously known as _bug_ 3136 at http://mercurial.selenic.com/bts/issue3136