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

Re: Really lousy performance with svn info --depth infinity

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Thu, 01 Sep 2011 18:12:39 +0100

<michael_rytting_at_agilent.com> writes:

> And here is the final comparison using an nfs mounted working copy.
> This is where the difference gets really bad.
>
> 1.6.17
>
> -> time /file_access/subversion/1.6.17/bin/svn info --depth infinity > /dev/null
>
> real 0m2.548s
> user 0m0.350s
> sys 0m0.142s
>
> 1.7.0-rc2
>
> -> time svn info --depth infinity > /dev/null
>
> real 6m51.036s
> user 0m13.947s
> sys 0m10.880s

I see the opposite on an NFS disk: the single recursive call is 20s and
the multiple non-recursive calls are 33s, so the single call is faster
as expected. It's still 20x slower than a local disk but that will be
because info is still using per-node sqlite transactions.

What do these command show:

$ sqlite3 .svn/wc.db "select count (*) from nodes"
$ sqlite3 .svn/wc.db "select count (*) from nodes where op_depth > 0"
$ sqlite3 .svn/wc.db "select count (*) from actual_node"

Does your working copy have "large" directories, i.e. a directory with a
large number of immediate subdirs/files? (It should be possible to
forumulate an SQL statement that tells me, but my SQL isn't good
enough).

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com
Received on 2011-09-01 19:13:13 CEST

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