[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: tortoisesvn issues with large commits

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: 2006-02-18 13:41:38 CET

Kevin Greiner wrote:

> Try the attached zip (rename it) containing batch files and WSH scripts.
> There isn't anything special or hard about these scripts. Just create
> 5,000 small files, import them, modify them, and commit them. It's
> amazing that the import and checkout are even faster using TSVN than the
> cmd-line version in some scenarios. That's pretty neat.

Wow! Thanks for those scripts!

> -------Cmd line--- -----TSVN--------
> # of files Operation Exec Time Memory Exec Time Memory
> -----------------------------------------------------------------------
> 1,000 files import 00:00:05 8mb 00:00:08 15mb
> 1,000 files checkout 00:00:24 8mb 00:00:28 15mb
> 1,000 files commit 00:00:44 15mb 00:01:29 29mb
> 2,000 files import 00:00:10 15mb 00:00:14 14mb
> 2,000 files checkout 00:01:16 8mb 00:01:20 17mb
> 2,000 files commit 00:02:52 15mb 00:05:56 60mb
> 5,000 files import 00:00:37 10mb 00:00:33 22mb
> 5,000 files checkout 00:05:11 17mb 00:04:44 26mb
> 5,000 files commit 00:15:45 28mb 00:28:31 246mb

Now here, the memory use of TSVN during the commit got me really
worried. Took quite some time, but I finally found the reason: TSVN
still commits all files separately, even if you don't deselect entries
but commit everything the commit dialog shows you.
If you try the same with the CL client, the memory use is also above 200MB.

I now (r5769) changed TSVN so that it really only commit the files
separately under the following conditions:
- multiple entries were selected to show the commit dialog (in that
case, we can't be sure that committing the parent dir only is really the
- entries are unchecked in the commit dialog to not commit them
- entries inside svn:externals are selected for commit too.

So only in these cases the memory use will grow - but that's something
for the Subversion guys to fix/change/improve.


btw: I'm now using your scripts to stress test the status cache :)

   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
To unsubscribe, e-mail: users-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: users-help@tortoisesvn.tigris.org
Received on Sat Feb 18 13:41:47 2006

This is an archived mail posted to the TortoiseSVN Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.