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

Re: TSVNCache Status Thread Has Priority Over Crawling Thread?

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: 2006-01-09 18:34:58 CET

Nathan Kidd wrote:

> I just did a command-line 'svn up' in a sizable working copy (21,000
> files, 2,000 dirs, 1,500 files actually updated) and observed that while
> this update was going on (a period of 5+ minutes) and for a minute or so
> after 'svn up' finished, TSVNCache.exe was using 20-50% CPU and any
> browsing in explorer was quite slow to respond. (E.g. click a folder in
> the tree view and it takes several seconds before any files are drawn in
> the right pane). After TSVNCache calmed down to its normal 0-5% CPU then
> explorer immediately was back to normal and the same directories that
> took 5-10 seconds to display before were displayed instantly again.

That's not a surprise.
When you don an 'svn up', disk activity is really high, not just because
of the TSVN cache but because of the actual update. In that case,
explorer will react very slowly, because explorer itself reads every
file it shows. And if disk activity is high, that's slow.

> So my question: Does TSVNCache have separate threads handling status
> requests from Explorer, and crawling the file system? (I presume it
> must.) If so is there any mechanism handling the priority of these
> threads? My ignorant-of-the-code observation is it would be ideal if
> status requests would not be bogged down by crawling. (If my
> interpretation of the cause has been correct?)

There are in fact several (6) different threads in the cache, each with
its own function to take care of.
And as you already want it: the thread handling status requests from the
explorer has the highest priority - all other threads have either "idle"
or "below normal" priority.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Mon Jan 9 19:13:22 2006

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.