On Wed, 12 Feb 2025 18:28:19 GMT, Daniel Fuchs <dfu...@openjdk.org> wrote:

> The code changes look reasonable. WRT to detecting deadlocks a possibility is 
> also to use `ManagementFactory.getThreadMXBean().findDeadlockedThreads();`
> 
> See for instance
> 
> https://github.com/openjdk/jdk/blob/336d0d8592aed734e7b8139e1ecd71d33825c75a/test/jdk/java/util/logging/TestLogConfigurationDeadLock.java#L167

I don't think I need this because if there was a deadlock, I know it can only 
be between the 2 threads I started.

> test/jdk/java/util/logging/LoggingDeadlock5.java line 31:
> 
>> 29:  *          java.logging
>> 30:  * @compile -XDignore.symbol.file LoggingDeadlock5.java
>> 31:  * @run main/othervm/timeout=10 LoggingDeadlock5
> 
> I would not specify any /timeout value here, and rather let jtreg deal with 
> that.

I was just copying the other timeout tests in this directory. This test is 
written to avoid blocking (apart from the self test case) and complete in about 
1 second, so removing this should be fine. Will do so in the next push.

> test/jdk/java/util/logging/LoggingDeadlock5.java line 115:
> 
>> 113: 
>> 114:     private static class DeadLocker {
>> 115:         private final static Duration JOIN_WAIT = 
>> Duration.ofMillis(500);
> 
> You might want to use `jdk.test.lib.Utils.adjustTimeout()` here to account 
> for the case when the test is run on slower configurations. Typically in 
> higher tiers, this test might be run with -Xcomp or -Xint and on debug builds 
> which might cause slow downs and cause the join() method to exit too early - 
> reporting false positives.

None of the other logging deadlock tests use this mechanism, but thanks for 
pointing it out. I will investigate.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/23491#issuecomment-2656028524
PR Review Comment: https://git.openjdk.org/jdk/pull/23491#discussion_r1954151677
PR Review Comment: https://git.openjdk.org/jdk/pull/23491#discussion_r1954153098

Reply via email to