Hi Daniel,
Thank you for the review. The replies are in-lined below. The new version of the webrev can be found here:
http://cr.openjdk.java.net/~aefimov/8225430/01

With Best Regards,
Aleksei


On 06/08/2019 18:09, Daniel Fuchs wrote:
Hi Aleksei,

Thanks for taking care of these tests!

http://cr.openjdk.java.net/~aefimov/8225430/00/test/jdk/java/net/Socket/NullHost.java

  39             svr.bind(new InetSocketAddress(InetAddress.getLoopbackAddress(), 0));

  maybe it would be worth adding a comment just before this line:

  // The client side calls Socket((String) null, ...) which
  // resolves to InetAddress.getByName((String)null) which in
  // turns will resolve to the loopback address.
Thanks - comment added.


HandleContentTypeWithAttrs.java:

 Since the original test had a backlog of 50:
 138         serverSocket = new ServerSocket(port, 50);
 maybe we should preserve it, and uses the ServerSocket constructor
 that takes a backlog number in the new code.
I've removed 50 value because the default value in ServerSocket is also 50. I do not see this value documented in javadoc [1] and it could be changed in future, so let me return it back to the test code. But I couldn't see how two-integers ServerSocket constructor can be used here since it will bind the socket address to InetAddress.anyLocalAddress():
    var ss = new ServerSocket(12345,50);
    ss.isBound() returns true
    ss.getLocalSocketAddress() returns 0.0.0.0/0.0.0.0:12345

Therefore I've added 50 backlog value to the ServerSocket::bind call

[1] https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/net/ServerSocket.html

best regards,

-- daniel

PS: RedirectLimit.java

One trick that's been used before - and that might be of interest
here if this test is observed failing again, is to make the server
side ignore any request that obviously don't come from the
test itself. One way of doing that could be e.g to ignore
(closing the accepted socket and doing as if nothing had been
received) a request whose URI path doesn't match what the
client is supposed to send, and possibly make that URI path
sufficiently unique so that the test is the only one to use it.

I'm not suggesting we should do this here, but something to keep
in mind if tests are observed failing due to rogue connections
from other processes on the machine.

Thanks I will keep that trick in mind and apply it if test fails again.



On 06/08/2019 15:35, Aleks Efimov wrote:
Hi,

Please help to review few test fixes which address intermittent networking failures:
http://cr.openjdk.java.net/~aefimov/8225430/00

JBS:
https://bugs.openjdk.java.net/browse/JDK-8225430

The following tests have been marked with @intermittent keyword:
java/net/DatagramSocket/ReuseAddressTest.java
java/net/ServerSocket/AcceptCauseFileDescriptorLeak.java

With Best Regards,
Aleksei


Reply via email to