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

Slow commit

From: Marcel Samek <msamek_at_machinimamagic.com>
Date: Wed, 10 Nov 2010 21:26:13 -0800

Having searched through the forums, I know that this topic has been
mentioned before. However none of the suggestions I found have made a
difference for us. It is an issue that impacts us greatly and I wanted
to contribute my observations in the hope that someone might have some
ideas on how to improve the situation.

We are using TortoiseSVN on a large project consisting of roughly 20 GB
in 30,000 files. Usually changes involve a few files and TortoiseSVN
works well. Every once in a while we do a large integration and the bulk
of the files are touched and commits seem to take a very long time -
sometimes several hours.

The commit starts OK and all the modified files get sent to the SVN
server relatively fast. When all the files have been sent, the
tortoiseSVN commit window sits there for a very long time - sometimes
hours - until it says "completed". The odd thing is that as far as the
SVN server is concerned the commit has already completed when the last
file is delivered. The CommitMonitor reports it as finished, svn log
commands show it as finished and I can check it out from another
computer. Yet, the TortoiseSVN commit window can take hours past that
point to report the commit operation as finished. During this time,
there is no network activity and virtually no CPU activity.

While it was in this state, I used Process Explorer to poke around and
see what TortoiseProc is doing. From tracking the open handles, it seems
to be traversing the entire tree of files that were just commited, but
doing it quite slowly. CPU usage (including kernel) is negligible. The
TortoiseProc process is averaging about 200 read calls per second,
averaging approximately 3 MB per second from the disk. There seems to
be no writing activity (at least not while I have watched it). Sometimes
the read rate spikes to about 6 MB per second but the bulk of the time
it sits around 3 MB.

I have tried it both with the virus checker enabled and disabled and it
makes no difference.

What is happening during this long period after the data has reached the
server? Is there anyway it could be optimized? Running a simple test
shows that I can read about 50 MB second from the disk on this system
when reading 8K blocks, so it seems that TortoiseProc is going through
all the data unusually slowly.

I am running Vista 64
TortoiseSVN 1.6.10, Build 19898 - 64 Bit , 2010/07/16 15:46:08




To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2010-11-11 07:29:52 CET

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.