RFR(S) : 8214904 : Test8004741.java failed due to "Too few ThreadDeath hits; expected at least 6 but saw only 5"
Igor Ignatyev
igor.ignatyev at oracle.com
Fri Nov 15 21:28:25 UTC 2019
Hi Katya,
actually, there is no race b/c there is happen-before edge b/w all actions in Test8004741::run (including updates of passed) and Thread.join (L142) in threadTest. so there is no need to use AtomicInteger. I'll add a comment to the bug report.
-- Igor
> On Nov 15, 2019, at 12:25 PM, Ekaterina Pavlova <ekaterina.pavlova at oracle.com> wrote:
>
> Hi Igor,
>
> you also mentioned in the bug report that "there is also a race on 'passed' field, j.u.c.AtomicInteger should be used here".
> Is it still good thing to do?
>
> thanks,
> -katya
>
> On 11/15/19 11:33 AM, Igor Ignatyev wrote:
>> http://cr.openjdk.java.net/~iignatyev//8214904/webrev.00
>>> 52 lines changed: 13 ins; 24 del; 15 mod;
>> Hi all,
>> could you please review this small patch which (hopefully) solves intermittent failures of compiler/c2/Test8004741 test?
>> the test used to run 12 times and expecting that no less (actually it was more than) 6 times ThreadDeath exception happenes during array allocation; the patch changes the test to run until ThreadDeath got caught 6 times.
>> the test has been also updated to use exceptions instead of System.exit to signal test failure and to use whitebox to check that 'test' method got compiled.
>> testing: 100 times on windows-x64-debug (where the test failed) + once on all platform
>> webrev: http://cr.openjdk.java.net/~iignatyev//8214904/webrev.00
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8214904
>> Thanks,
>> -- Igor
>
More information about the hotspot-compiler-dev
mailing list