On 20 Jan 2016, at 06:36, Chris Hegarty <chris.hega...@oracle.com> wrote:
> Felix, > > On 14 Jan 2016, at 06:07, Felix Yang <felix.y...@oracle.com> wrote: > >> Hi all, >> please review the fix for >> test/java/net/SocketPermission/SocketPermissionTest.java, which fails >> frequently with "java.net.BindException: Address already in use". >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8065076 >> Webrev: http://cr.openjdk.java.net/~xiaofeya/8065076/webrev.00 > > My preference is to avoid getFreePort. It is problematic and I believe just > obfuscates > the intermittent failures further. > > In many of the test scenarios the “listening” socket can be created before > the specific > access control context and associated permission are created. > > I’ll see if I can get some time to try this out. I spent a little time on this today. I basically rewrote the test, but kept the same test scenarios. The use of data providers was cute, but not workable since there is no common supertype for the socket classes. I decided to just expand out the test cases manually. This will give the same test coverage, but should be stable since it creates the sockets first, on an ephemeral port, and then constructs the permissions appropriately given that port. http://cr.openjdk.java.net/~chegar/8065076/ The webrev diffs are almost useless, just review the new file, and compare test scenarios against the what is in the old file. -Chris.