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

Re: Optimization of status-query on multiple files in a common directory

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Fri, 27 Aug 2010 14:28:54 +0200

On 24.08.2010 13:36, Beckmann, Thomas wrote:
> Dear developers,
>
> I am facing the following problem I tracked down to an optimization of
> the status query that appears to be of 2004. I am automating the commit
> dialog of TortoiseSVN by passing a list of files using the /pathfile
> command line parameter. When committing multiple files from a number of
> directories of my working copy the modification status gets displayed
> within seconds. Now, when providing two or more files from a single
> directory however it takes ages (5+ minutes).
>
> There is an optimization in SVNStatusListCtrl.cpp::GetStatus(), Line
> 383. In case of multiple files from a common directory a single status
> query is issued and the relevant results are filtered. In my case the
> directory contains 5000+ files and I want to commit only 2 of them.
>
> - Despite filtering, are there any side-effects when using the
> non-optimized multiple-query code path over the single directory and
> filtering code path?

With the optimized code, we only query the parent directory. If we would
query a single file in that directory, it would take about the same
amount of time.

But in 1.7, the svn library will be much faster querying the status of
single files, so I'll remove that optimization soon since it won't be
nececessary anymore.

Stefan

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2652063

To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2010-08-27 14:29:07 CEST

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

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