8152515: (logging) LogManager.resetLogger should ignore LinkageError
Roger Riggs
Roger.Riggs at Oracle.com
Fri Oct 28 16:15:31 UTC 2016
Hi Jonathan,
There is no issue in this case.
LinkageError does not extend Exception so they are disjoint at the catch
clauses.
And the compiler produces an error if a catch clause hides another
exception to keep
the mistake from being hidden.
$.02, Roger
On 10/28/2016 12:00 PM, Jonathan Bluett-Duncan wrote:
> I've an awful suspicion that the `catch (LinkageError e)` block is
> unreachable, as the `catch (Exception e)` block would run first, being
> located above the other block in the source code.
>
> Is my suspicion correct?
>
> Kind regards,
> Jonathan
>
> On 28 October 2016 at 16:36, Jason Mehrens <jason_mehrens at hotmail.com>
> wrote:
>
>> Daniel,
>>
>> Looks good to me.
>>
>> Thanks for fixing this!
>>
>> Jason
>>
>> ________________________________________
>> From: Daniel Fuchs <daniel.fuchs at oracle.com>
>> Sent: Friday, October 28, 2016 6:51 AM
>> To: core-libs-dev
>> Cc: Jason Mehrens
>> Subject: RFR: 8152515: (logging) LogManager.resetLogger should ignore
>> LinkageError
>>
>> Hi,
>>
>> Please find below a trivial patch for:
>>
>> 8152515: (logging) LogManager.resetLogger should ignore LinkageError
>> https://bugs.openjdk.java.net/browse/JDK-8152515
>>
>>
>> Patch:
>> http://cr.openjdk.java.net/~dfuchs/webrev_8152515/webrev.00/
>>
>> The issue might occur at shutdown, when a handler that makes uses
>> of some APIs provided by an OSGI bundle which was already closed
>> by the shutdown process is in turn closed by the LogManager.Cleaner
>> thread. In that case some subclasses of LinkageError may be thrown,
>> interrupting the reset process and preventing other handlers from
>> being closed properly.
>>
>> The patch proposes to trivially ignore LinkageError at shutdown while
>> the LogManager.Cleaner thread is running.
>>
>> best regards,
>>
>> -- daniel
>>
More information about the core-libs-dev
mailing list