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

Re: JavaHL: Exceptions in LogMessageCallback.singleMessage should abort the log immediately

From: Branko Čibej <brane_at_wandisco.com>
Date: Fri, 20 Mar 2015 23:35:49 +0100

On 20.03.2015 13:59, Branko Čibej wrote:
> On 20.03.2015 13:34, Marc Strapetz wrote:
>> On 16.03.2015 17:54, Bert Huijben wrote:
>>>
>>>> -----Original Message-----
>>>> From: Marc Strapetz [mailto:marc.strapetz_at_syntevo.com]
>>>> Sent: maandag 16 maart 2015 17:30
>>>> To: dev_at_subversion.apache.org
>>>> Subject: JavaHL: Exceptions in LogMessageCallback.singleMessage
>>>> should abort
>>>> the log immediately
>>>>
>>>> If e.g. a RuntimeException is thrown in
>>>> LogMessageCallback#singleMessage, it's not processed in
>>>> LogMessageCallback::singleMessage and the log is continued
>>>> nevertheless:
>>>>
>>>> (1) At line 77 in LogMessageCallback.cpp, there should be returned an
>>>> appropriate error code.
>>>>
>>>> (2) After line 122, JNIUtil::isJavaExceptionThrown() should be called
>>>> and there should be returned an appropriate error code.
>>>>
>>>> In both cases, the returned error code should result in stopping the
>>>> low-level log; rethrowing the Exception in RemoteSession::getLog won't
>>>> be necessary, as this can be established easily from within client code
>>>> itself.
>>> This is a common problem that applies to almost all callbacks in
>>> JavaHL in <= 1.9.
>>>
>>> A fix for this generic problem has been applied to trunk in r1664938
>>> (further tweaks/extensions in 1664939,1664940,1664978,1664984).
>>>
>>> This introduces some behavior changes (such as the one you noted), so
>>> backporting needs discussion here. Thanks for starting the discussion
>>> ;-)
>> As JavaHL was reworked significantly for Subversion 1.9, is there a
>> possibility to get this change backported?
> Not to 1.8, I'm afraid; the differences are far too huge. Fixing this
> for 1.9.0 is possible, and I agree we should do it.

On the topic of behaviour change ... I'd classify it as "removal of
obvious implementation bug".

-- Brane
Received on 2015-03-20 23:41:27 CET

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