java/net/SetFactoryPermission/SetFactoryPermission.java fails with error "factory already defined"
EL MAAKOUL IMANE
maakoulimane at gmail.com
Thu Sep 8 11:19:16 UTC 2016
Hello,
When running Jtreg test suite with jdk9, the test:
java/net/SetFactoryPermission/SetFactoryPermission.java
fails with the exception:
java.lang.Error: factory already defined
This error only happens when: java/net/HandlerLoop.java is run before
java/net/SetFactoryPermission/SetFactoryPermission.java within the same
agent. This is explained by the fact that in java/net/HandlerLoop.java
calls the setter URL.setURLStreamHandlerFactory is called with a non-null
parameter, which can be called only once in a JVM instance according to the
JAVA API.
Consequently the VM that runs java/net/HandlerLoop.java is invalid for
running java/net/SetFactoryPermission/SetFactoryPermission.java.
To solve that problem, an annotation could be added to the test
java/net/HandlerLoop.java to tell Jtreg runner to spawn a new VM for that
test.
Note: This is reproducible using the -agentvm and setting the concurrency
to 1 and also renaming
the package of one of the tests to force it to be executed first.
Reproducible always with jdk9.
Best regards,
Imane EL Maakoul
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/jtreg-use/attachments/20160908/ab42a3cd/attachment.html>
More information about the jtreg-use
mailing list