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

Re: Repair move is slow and could be more intelligent

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Sat, 25 Apr 2009 19:05:37 +0200

Robert Roessler wrote:
> Stefan Küng wrote:
>> webpost_at_tigris.org wrote:
>>>> webpost_at_tigris.org wrote:
>>>>>> Alexander Iljin wrote:
>>> ...
>>> Not quite sure how you are sorting 15000 items that slow? On my
>>> machine, sorting 15000 items of a decent size (300 bytes) takes less
>>> than ½ sec in a completely un-optimized program and about half if I
>>> sort the pointers to the objects only.
>> It's not the sorting that takes so much time. But after sorting the list
>> control must be filled again, and that takes more time than the actual
>> sorting.
>
> Obviously everyone knows about turning off redraw while filling a
> large[r] list control, but I have also had good results with "owner
> DATA" (not owner DRAW, different issue).
>
> With owner DATA, the control doesn't store all of the data itself - the
> owner just gets sent a message whenever the data for a particular item
> needs to be displayed.
>
> This can work especially well with large numbers of items, both because
> the control's own heavyweight storage mechanisms are not being used, but
> also if one has list items that can easily be generated/synthesized on
> demand, then NO ONE has to allocate the storage. ;)
>

There's no need to lecture me about the list control. Owner data is used
in the log dialog and some other dialogs in TSVN that use the list control.
And of course turning off redrawing is done too.

The only reason why there's no owner-data used in the status list
control (that's used in the commit dialog) is that it's a lot of work,
and for most working copies wouldn't gain any speed improvements. Just
as an example, my wc of the TSVN source with all the externals currently
shows a size of 5GB in 30'000 files (that's of course including all the
.svn folders and its content). And sorting/filling the list control
takes half a second on my machine (which is not very fast).

However, if you want to contribute more than lectures, feel free to
provide a patch.

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=1913188
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].

Received on 2009-04-25 19:06:32 CEST

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