Bug 3136 - Performance of "hg status" is very bad with largefiles extension enabled
Summary: Performance of "hg status" is very bad with largefiles extension enabled
Status: RESOLVED FIXED
Alias: None
Product: Mercurial
Classification: Unclassified
Component: Mercurial (show other bugs)
Version: unspecified
Hardware: All All
: normal bug
Assignee: Na'Tosha Bard
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-06 08:28 UTC by Na'Tosha Bard
Modified: 2011-12-08 17:00 UTC (History)
3 users (show)

See Also:
Python Version: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Na'Tosha Bard 2011-12-06 08:28 UTC
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.
Comment 1 Na'Tosha Bard 2011-12-06 08:29 UTC
Correction: 

"especially on largefiles repositories"

should read:

"especially on large repositories"
Comment 2 Na'Tosha Bard 2011-12-07 05:57 UTC
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).
Comment 3 Na'Tosha Bard 2011-12-07 06:49 UTC
Marking this as in-progress.

Patch sent to mercurial-devel list:

http://www.selenic.com/pipermail/mercurial-devel/2011-December/036149.html
Comment 4 HG Bot 2011-12-08 17:00 UTC
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)
Comment 5 Bugzilla 2012-05-12 09:25 UTC

--- 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