[fossil-users] fossil operations deadly slow

2010-03-16 Thread Joshua Paine
So, I had a fossil repo for a web app that has a lot of hands in it. I'm
the only code developer (though not the first by many years--repo
converted from CVS), but the application serves hundreds of clients, and
images and other such customizations for each client are done by others.

The directory with these custom images etc. is large, so I left it out
of the repo initially. But now those others need to do a lot of work
replacing old graphics, so I added the images dir and subdirs so there'd
be a safe place for them to get their old versions back and we wouldn't
end up with dozens of files renamed to OLDfoo.bar.

Now that I've added these image dirs, fossil is inconceivably slow.
`fossil status` takes 45 sec on my dev machine, 4.5 minutes on the
server. Trivial commits take minutes.

The fossil repo is about 1GB.

Is this expected-ish behavior for a repo with many files at 1GB?

If I delete all these images from any branch I work with, will it get
fast again?

-- 
Joshua Paine  
LetterBlock: Web applications built with joy  
http://letterblock.com/  
301-576-1920

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] fossil operations deadly slow

2010-03-16 Thread D. Richard Hipp

On Mar 16, 2010, at 5:24 PM, Joshua Paine wrote:

 So, I had a fossil repo for a web app that has a lot of hands in it.  
 I'm
 the only code developer (though not the first by many years--repo
 converted from CVS), but the application serves hundreds of clients,  
 and
 images and other such customizations for each client are done by  
 others.

 The directory with these custom images etc. is large, so I left it out
 of the repo initially. But now those others need to do a lot of work
 replacing old graphics, so I added the images dir and subdirs so  
 there'd
 be a safe place for them to get their old versions back and we  
 wouldn't
 end up with dozens of files renamed to OLDfoo.bar.

 Now that I've added these image dirs, fossil is inconceivably slow.
 `fossil status` takes 45 sec on my dev machine, 4.5 minutes on the
 server. Trivial commits take minutes.

 The fossil repo is about 1GB.

 Is this expected-ish behavior for a repo with many files at 1GB?

 If I delete all these images from any branch I work with, will it get
 fast again?

The problem is probably that Fossil is computing SHA1 checksums on all  
the files in the check-out to see if they have changed.  You can get  
Fossil to use mtimes instead by doing:

  fossil setting mtime-changes on

Mtime-changes is now the default, but I'm guessing you are using an  
older version of Fossil.  After you turn mtime-changes on, you have to  
do a check-out before it takes full effect, I think, but after that  
things should go faster.

Check-ins and check-outs will still be kind of slow in as much as  
Fossil still computes MD5 checksums over everything in those cases.   
See http://www.fossil-scm.org/fossil/doc/tip/www/selfcheck.wiki for an  
explanation of why we do this expensive computation.  If you find  
things are still too slow, let me know.  We can work together to  
profile your runs and try to figure out what the inefficiency is and  
fix it.


 -- 
 Joshua Paine
 LetterBlock: Web applications built with joy
 http://letterblock.com/
 301-576-1920

 ___
 fossil-users mailing list
 fossil-users@lists.fossil-scm.org
 http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

D. Richard Hipp
d...@hwaci.com



___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users