[9] RFR: 8159038: javax/net/ssl/SSLSession/SessionCacheSizeTests.java failed with java.net.SocketException: Address already in use

Xuelei Fan xuelei.fan at oracle.com
Tue Jun 14 11:38:15 UTC 2016

Looks fine to me.


On 6/14/2016 6:25 AM, Artem Smotrakov wrote:
> Hello,
> Please review this patch for 9.
> javax/net/ssl/SSLSession/SessionCacheSizeTests.java test fails
> intermittently with "java.net.SocketException: Address already in use"
> exception. This exception occurs while creating a server socket:
> ...
> void doServerSide(int serverPort, int serverConns) throws Exception {
>         try (SSLServerSocket sslServerSocket =
>                 (SSLServerSocket) sslssf.createServerSocket(serverPort)) {
> ...
> , where "serverPort" comes from "serverPorts" array which is originally
> initialized with zeros.
> The code looks correct to me, and I don't see how "serverPort" may have
> non-zero value, so that it can point to a busy port. If "Address already
> in use" error occurs when zero is passed to
> SSLServerSocketFactory.createServerSocket() then it looks like a bug there.
> Passing "serverPort" to doServerSide() and startServer() methods looks
> redundant. doServerSide() method can just pass zero to
> SSLServerSocketFactory.createServerSocket() method.
> The patch updates the test to use a zero constant when it creates a
> server socket. As I mentioned earlier, and if I am not missing
> something, the code looks correct to me, this change is to make sure
> that zero is passed to there. Any other suggestions are very welcome.
> It also updates the test to print some additional output, and to use
> try-with-resources and try-finally blocks.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8159038
> Webrev: http://cr.openjdk.java.net/~asmotrak/8159038/webrev.00/
> Artem

More information about the security-dev mailing list