> The test java/net/Socket/UdpSocket.java has been seen to fail with a 
> BindException, in the testMaxSockets test, on a regular basis on 
> macOS-aarch64 platform. testMaxSockets tests the maximum number of UDP 
> Sockets that may be created as defined by a system property 
> sun.net.maxDatagramSockets. It invokes the Socket constructor 
> Socket(InetAddress host, int port, boolean stream) with stream set to false 
> to create a UDP Socket. This instantiation is a compound operation, 
> consisting of the creation of a socket, the explicit binding of wildcard 
> address and ephemeral port, and a connect to the socket end point specified 
> in the constructor parameters.  Analysis has shown that during the test that 
> the OS intermittently allocates the same ephemeral port multiple times during 
> the bind system call, such that two separate sockets end up bound to the same 
> port. Then on the connect invocation a BindException is thrown for the second 
> socket. This has been determined to be a transient condition duri
 ng heavy loads and where a significant number of ephemeral ports are being 
allocated.
> 
> As this is deemed an OS issues, and in order to increase test stability, it 
> has been found that for the BindException condition a retry of the Socket 
> creation mitigates the issues and tests the max creation property.

Mark Sheppard has updated the pull request incrementally with one additional 
commit since the last revision:

  JDK-8265362 java/net/Socket/UdpSocket.java fails with 
"java.net.BindException: Address already in use" (macos-aarch64)
  update as per request by AB

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/4103/files
  - new: https://git.openjdk.java.net/jdk/pull/4103/files/1f05203e..87cd9c5e

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4103&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4103&range=00-01

  Stats: 5 lines in 1 file changed: 0 ins; 0 del; 5 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4103.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4103/head:pull/4103

PR: https://git.openjdk.java.net/jdk/pull/4103

Reply via email to