RFR: 8131745: java/lang/management/ThreadMXBean/AllThreadIds.java still fails intermittently
Daniil Titov
daniil.x.titov at oracle.com
Fri May 29 23:28:21 UTC 2020
Hi Alex and Serguei,
Please review a new version of the change [1] that makes sure that the test counts
only the threads it creates and ignores Internal threads VM might create or destroy.
Testing: Running this test in Mach5 with Graal on several hundred times ,
tier1-tier3 tests are in progress.
[1] http://cr.openjdk.java.net/~dtitov/8131745/webrev.02/
[2] https://bugs.openjdk.java.net/browse/JDK-8131745
Thank you,
Daniil
On 5/22/20, 10:26 AM, "Alex Menkov" <alexey.menkov at oracle.com> wrote:
Hi Daniil,
I'm not sure all this retry logic is a good way.
As mentioned in jira the most important part of the testing is ensuring
that you find all the created threads when they are alive, and you don't
find them when they are dead. The actual thread count checking is not
that important.
I agree with this and I'd just simplify the test by removing checks for
thread count. VM may create and destroy internal threads when it needs it.
--alex
On 05/18/2020 10:31, Daniil Titov wrote:
> Please review the change [1] that fixes an intermittent failure of the test.
>
> This test creates and destroys a given number of daemon/user threads and validates the count of those started/stopped threads against values returned from ThreadMXBean thread counts. The problem here is that if some internal threads is started ( e.g. " HotSpotGraalManagement Bean Registration"), or destroyed (e.g. "JVMCI CompilerThread ") the test hangs waiting for expected number of live threads.
>
> The fix limits the time the test is waiting for desired number of live threads and in case if this limit is exceeded the test repeats itself.
>
> Testing. Test with Graal on and Mach5 tier1-tier7 test passed.
>
> [1] http://cr.openjdk.java.net/~dtitov/8131745/webrev.01
> [2] https://bugs.openjdk.java.net/browse/JDK-8131745
>
> Thank you,
> Daniil
>
>
>
More information about the serviceability-dev
mailing list