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

Re: Asynchronous structured exception handling (SEH) in TortoiseProc (/EHa)

From: Ivan Zhakov <ivan_at_visualsvn.com>
Date: Fri, 26 Feb 2016 15:43:03 +0300

On 25 February 2016 at 22:38, Stefan Kueng <tortoisesvn_at_gmail.com> wrote:
> On 25.02.2016 10:37, Ivan Zhakov wrote:
>>>
>>> the log cache is optimized for speed. For example, you can show the log
>>> for
>>> the whole KDE or Apache repository (including all subproject). Then show
>>> the
>>> log again and you get *all* entries within about two/three seconds.
>>> But for more details, you have to ask Stefan Fuhrmann ;)
>>
>>
>> SQLite is very performant when there's little concurrency (as it is
>> with the log caching). I wonder, what was the reason of not using it
>> for this purpose and re-implementing everything manually.
>
> I think one reason was also memory use: if you have the whole log data for
> e.g. the Apache repository in memory, that's quite a lot.
>
SQLite doesn't load the whole DB to memory and could easily handle
several gigabytes of data.

>> Btw we started to convert some abort() calls in status-fetching code
>> to normal errors in Subversion.
>
>
> Finally!
> I've asked for this many, many times until I gave up arguing...
>
:)

>
>> It took a little bit longer than I expected but as of r27210 log cache
>> should gracefully handle most common database corruptions. There are
>> still some cases when TortoiseSVN trunk will crash with a corrupted
>> log cache, but TortoiseSVN 1.9.3 may also crash in these cases. I'm
>> going to fix these edge cases later.
>
>
> I've checked your commits and I agree it's much better now.
>
Thanks!

>> I disabled asynchronous structured exception handling (SEH) in
>> TortoiseProc in r27211.
>>
>
> Thanks!
>
>
>> What do you think about backporting these changes to 1.9.x? Changes
>> are not small, but they fix real crashes.
>
>
> I think we should wait for about a week: I'd like to have a nightly build in
> use here for a while before we merge those changes back.
>
> And about merging back: would you do that? Not sure which revisions you want
> to merge...
>
Sure, there is no rush for backporting these changes to 1.9.x branch.
But it would be nice to get these fixes in 1.9.x branch someday.

I think it makes sense to backport all log cache changes, i.e:
27183-27192,27194-27196,27199-27211.
These changes merges cleanly to 1.9.x branch. I could do that.

-- 
Ivan Zhakov
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=3162973
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2016-02-26 14:23:32 CET

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.