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

Re: 1.1rc1 performance regression in 'svn status'

From: Peter N. Lundblad <peter_at_famlundblad.se>
Date: 2004-08-05 08:39:58 CEST

On Wed, 4 Aug 2004, Matt Doran wrote:

> I have a large repository that contains about 5000 files, with some
> directories containing hundreds of files. When I do an 'svn status' I get
> the following results:
>
> SVN 1.0.6: ~ 4 secs
> SVN 1.1rc1: ~ 38 secs !!
>
> I used the Filemon utility from sysinternals to try to determine what it
> happening. It looks like 1.1 excessively hits 'iconv' files. (e.g.
> windows-1252.so, utf-8.so, etc)
>
> In 1.0 it appears to hit these files early in the process, but then doesn't
...

When we use iconv, we cache the iconv handle in the current pool. I guess
we are doing some charset encoding in a loop with a subpool that gets
cleared or something.

Couldn't we used thread-specific data for this instead? Another idea would
be to cache the handle in the root of the pool hierarchy. I don't know if
this might cross thread boundaries, so that might not be a good idea.

FWIW, I don't get this problem on Linux, but glibc's iconv might be better
at caching.

Is there any proboem with TSD in APR? Don't know ow it works on Windows.

Regards,
//Peter

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Aug 5 08:27:47 2004

This is an archived mail posted to the Subversion Dev mailing list.

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