On Fri, 17 Dec 2021 14:52:53 GMT, Jaikiran Pai <j...@openjdk.org> wrote:
> Can I please get a review for this test only change which proposes to enable > debug logs from the test that failed intermittently? This change addresses > https://bugs.openjdk.java.net/browse/JDK-8278961. > > The change passes the (test specific) `-d` option to enable logs from that > test by default. While I was at it, I even added a few more debug logs hoping > it might provide some hints if/when it fails next. > > For reference, a (successful) run of this test will now print something like: > > > ----------System.out:(18/930)---------- > running on OS that supports ICMP port unreachable > Testing with class java.net.DatagramSocket > tests will be run against destination address localhost/127.0.0.1 port 52682 > Checking send to connected address ... > socket is locally bound to address /127.0.0.1 port 52681 > received data from address /127.0.0.1 port 52681 > received data from address /127.0.0.1 port 52681 > received data from address /127.0.0.1 port 52681 > received data from address /127.0.0.1 port 52681 > received data from address /127.0.0.1 port 52681 > Checking send to non-connected address ... > received data from address /127.0.0.1 port 52681 > Checking send to invalid address ... > Got expected exception: java.net.PortUnreachableException > Got expected exception: java.net.PortUnreachableException > Got expected exception: java.net.PortUnreachableException > Got expected exception: java.net.PortUnreachableException > Got expected exception: java.net.PortUnreachableException Does the `OSsupportsFeature` method still make sense? It mentions Windows 2000; I'm pretty sure every Windows version supports this today. Also, I took a peek at JDK-8278858. The logs mention > elapsed time (seconds): 20.069 which is consistent with 5 (tries) *4seconds (timeout), which suggests that either the host firewalls ICMP "destination unreachable" packets, or our `serversock.close ();` call is somehow broken on that machine. test/jdk/java/net/DatagramSocket/SendDatagramToBadAddress.java line 178: > 176: p = new DatagramPacket(buf, buf.length, addr, port); > 177: sock.receive (p); > 178: print("(unexpectedly) received data from address " + > p.getAddress() We should immediately fail the test here test/jdk/java/net/DatagramSocket/SendDatagramToBadAddress.java line 182: > 180: } catch (InterruptedIOException ex) { > 181: print ("socket timeout"); > 182: } catch (Exception ex) { Can we catch `PortUnreachableException` here instead? ------------- PR: https://git.openjdk.java.net/jdk/pull/6883