Hi Daniil,
It looks good.
I've consulted with Igor Ignatyev, and he suggested exactly the same
approach.
Thanks,
Serguei
On 3/13/18 22:26, Daniil Titov wrote:
Please review the changes that fix intermittent timeout failure of
serviceability/dcmd/framework/* tests.
The problem here is that these tests invoke jcmd in different ways and one of
such ways is when a main class is passed to the jcmd as a VM identifier. The
main class for jtreg test is com.sun.javatest.regtest.agent.MainWrapper and in
some cases more than one test are running in parallel and there are multiple
Java processes with com.sun.javatest.regtest.agent.MainWrapper as a main class
. When it happens jcmd iterates over all Java processes that match the
condition (the main class equals to com.sun.javatest.regtest.agent.MainWrapper)
and executes the command for each of them. That results in the jcmd invokes the
given command multiple times and attaches to Java processes not related to the
current test.
The fix makes serviceability/dcmd/framework/* tests non-concurrent to ensure
that they don't interact with other tests.
Bug: https://bugs.openjdk.java.net/browse/JDK-8166642
Webrev: http://cr.openjdk.java.net/~dtitov/8166642/webrev.01
The tests ran successfully with Mach5.
Best regards,
Daniil