Brock Janiczak <firstname.lastname@example.org> wrote on 02/18/2006 05:59:59 PM:
> One thing i did find while trying to reproduce the slowness was that the
> AddResourcesCommand is getting the status one at a time for each
> resource which makes it painfully slow. I have attached a patch for
> this issue. It could be further improved by not recursively updating
> the automatically added parents.
This does appear to make a big improvement. The process is still slow,
but it runs at a very steady and quick pace. But even at 2-3 adds per
second you are still taking about 2600-4000 seconds to add 8000 files.
That is still 40-70 minutes just to do the svn add process. In comparison
a recursive add using the command line looks like it is processing 10-20
adds per second.
I also confirmed with my colleague, that it is during this add process
that he experiences the slowdown. It never even gets to the commit.
Looking at your patch I had a few comments/suggestions:
1) Exceptions. When I was testing (before your patch) I couldn't even get
through the Add process because I had an auto prop to set the
svn:eol-style property and it would hit files with inconsistent new lines.
In your code if an exception was hit the refresh code would be completely
2) Efficiency. Consider my case where I am sharing a huge project with
tons of folders. Right now it is going to be refreshing the same folder a
lot of times isn't it? Maybe there should just be some flag that if you
are adding more than 20-30 resources it just refreshes the whole project?
Or, how efficiently could we get the common parent and always refresh
3) Recursive. I do not have any good ideas but if there was just some way
we could know to do a recursive add it would really speed things up. So
this last one is more just a comment. I am not expecting anything. I
think the best answer to this, would be to solve it someplace else. User
could do the recursive Add from the Team menu or something and then do the
commit after and skip this all together. It would be hard for the commit
dialog to do it.
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
To unsubscribe, e-mail: email@example.com
For additional commands, e-mail: firstname.lastname@example.org
Received on Mon Feb 20 18:25:14 2006