Jean-Marc van Leerdam wrote:
> Hi Steve,
> I fully appreciate the agony you must be going through. I am sure that
> if there is anyone that can find this, it will be you. I may miss the
> experience to be of help to you, but I do have some suggestions (see
> below). Of course you probably already thought about these, but I
> mention them just in case.
> 2008/6/14 Stefan Küng <tortoisesvn_at_gmail.com
> Some of you may have read reports that TSVN is twice as slow when
> doing a merge than the svn command line client (RC9 from
> open.collab.net <http://open.collab.net>).
> I can reproduce this easily: the build script of TSVN also builds
> the command line client, so simply comparing that client with the
> one installed from open.collab.net <http://open.collab.net> shows
> the same effect.
> I've used the tool "timethis" to measure a simple (but useless) merge:
> timethis svn merge -r11761:11762
> d:\development\SVN\TortoiseSVN --dry-run --accept postpone
> This results in a merge time of 2 min 37 seconds with the rc9 from
> open.collab.net <http://open.collab.net>, and 5 min 17 seconds with
> the command line client built myself with the TSVN build scripts.
> I've also recorded the network packets with WireShark: they're
> identical for both clients. The only difference is the time between
> recorded packets.
> Are the network packets distributed in the same way across the timespan?
> Or are there specific extra pauses when using your own command line client?
Yes, each packet sent from my own built client is sent a few miliseconds
later. It's not just a few big pauses in between, it's between every
> How does the TSVN Gui perform this merge? Is it also 5 min 17, or is it
> much slower than that? --> If it's the same then the issue most likely
> lies in the SVN libraries.
It's the same as with my own built CL client. Also aroung 5:17.
> IIRC in the past TSVN (or the SVN linbraries, I can't remember) has had
> some issues with DLLs being loaded and unloaded frequently. Could that
> be the cause of the extra delays?
Already checked that. But the debugger doesn't show any dll loads or
unloads during a merge (only when the command starts, but that's
expected and has nothing to do with the delay).
Thanks anyway for your suggestions.
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.net
Received on 2008-06-14 23:33:47 CEST