java/net/SetFactoryPermission/SetFactoryPermission.java fails with error "factory already defined"

Sean Coffey sean.coffey at oracle.com
Thu Sep 8 14:21:48 UTC 2016


Good point. That test should be run in other vm mode. I've logged 
https://bugs.openjdk.java.net/browse/JDK-8165711
We can do the code review on net-dev mailing list.

regards,
Sean.


On 08/09/2016 12:19, EL MAAKOUL IMANE wrote:
> 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 
> runningjava/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 spawna 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/36ee2fb2/attachment.html>


More information about the jtreg-use mailing list