On Thu, 24 Aug 2023 10:54:19 GMT, Sean Coffey <[email protected]> wrote:
>> Recursive initialization calls possible during loading of LoggerFinder
>> service.
>>
>> This fix detects the recursive call and returns a temporary LoggerFinder
>> that is backed by a lazy logger. Automated test case developed to simulate
>> loading of an external LoggerFinder service while also having other threads
>> poke System.getLogger during this framework initialization.
>
> Sean Coffey has updated the pull request incrementally with two additional
> commits since the last revision:
>
> - Improve test coverage
> - Incorporate review comments from Daniel
test/jdk/java/lang/System/LoggerFinder/SignedLoggerFinderTest/SignedLoggerFinderTest.java
line 122:
> 120: Thread.sleep(sleep);
> 121: } catch (InterruptedException e) {
> 122: throw new RuntimeException(e);
Given that this will end up being thrown from a `Thread`, this will end up
being an uncaught exception and handled by a `UncaughtExceptionHandler` (I
don't remember if/what jtreg sets it to). The default `ThreadGroup`
UncaughtExceptionHandler, just logs to System.err such exceptions
https://github.com/openjdk/jdk/blob/master/src/java.base/share/classes/java/lang/ThreadGroup.java#L697.
Just noting it here, in case you want to do this differently if you want this
exception to fail the test.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15404#discussion_r1305534996