Thank you. This is a very detailed explanation.
I had new webrev with removing othervm.
http://cr.openjdk.java.net/~tyan/JDK-8030089/webrev.01/
Regards
Tristan
On 01/08/2014 08:51 PM, Alan Bateman wrote:
On 08/01/2014 11:01, Tristan Yan wrote:
Hi Alan
Maybe my understanding is wrong. Are you saying even in agentvm mode,
there will be still different VM for every test. If the answer is
yes, when should we use othervm mode?
The purpose of -agentvm is to speed up the test execution by eliding
the VM startup that otherwise dominates the execution of many short
running tests. Tests are still executed sequentially, it's just that
there isn't a VM started up for each test. With concurrency then the
tests don't execute concurrently in the same VM, instead there is a
pool of independent VMs that run concurrently. We still need othervm
for some tests and for varied reasons. One reason is tests that can't
restore things or clean up, another reason is tests that require
special VM options. We moved to -agentvm a few years ago but we still
periodically find issues where a test does something that causes a
test that runs subsequently to have a problem.
Anyway, for this test then my point was that it probably doesn't need
to run in othervm mode, just changing it to await indefinitely should
be fine (as it's await will timeout would require a long timeout when
running with a fastdebug build).
-Alan.