Open Haroon-Khel opened 2 years ago
Ping @aixtools
multicast
related.Trying to get the failing tests narrowed down, trying TARGET: jdk_net now (jdk_net_0 didn't seem to do anything).
This is the failed test URL - FOR RESTARTS! Change the JDK version for the different tests : from Grinder #4245
For the moment: to look for delta/regression
java-18: https://ci.adoptopenjdk.net/job/Grinder/4270/ Test Result (16 failures / +11)
java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting
java-8: https://ci.adoptopenjdk.net/job/Grinder/4274/ Test Result (4 failures / +4)
java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf
jdk-11: https://ci.adoptopenjdk.net/job/Grinder/4276/ :) No failures !
jdk-17: https://ci.adoptopenjdk.net/job/Grinder/4277/ ;( 20 failures - rather than 18 with jdk18
Test Result (20 failures / +20) java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/MulticastSocket/B6427403.java.B6427403 java/net/MulticastSocket/B6427403.java.B6427403 java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/NoLoopbackPackets.java.NoLoopbackPackets java/net/MulticastSocket/NoLoopbackPackets.java.NoLoopbackPackets java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test
I'll need some assistance with setting up a way to test changes in openjdk itself, e.g., a change in java.base/sun.nio.ch.DatagramChannelImpl.innerJoin(DatagramChannelImpl.java (that is not part of the aqu-tests).
Sigh: Thought I had saved the parambuild URL - but sadly not.
From testing on the java8: when two interfaces are defined - it fails on the interface with no (default) route. When that interface is detached, the 'JoinLeave' test succeeds.
4476 results Test Result (16 failures / +12)
com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave
4477 results Test Result (17 failures / +1)
java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/Socket/asyncClose/Race.java.Race com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave
OK. Reran once again - and this is the list with dual interfaces defined: (adopt08) Test Result (16 failures / +15) com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test
Final rerun: one interface defined (adopt06) - https://ci.adoptopenjdk.net/job/Grinder/4511/ Test Result (16 failures / +16)
com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test
Tried a lot of different settings on AIX but still get nearly the same test failures. Have to check if the errors themselves are the same though. (19 now, rather than 16). Test Result (19 failures / +13)
java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/MulticastAddresses.java.MulticastAddresses java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/Promiscuous.java.Promiscuous java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/Test.java.Test java/net/MulticastSocket/Test.java.Test java/net/Socket/asyncClose/Race.java.Race com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings com/sun/net/httpserver/simpleserver/StressDirListings.java.StressDirListings java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize java/net/DatagramSocket/SendReceiveMaxSize.java.SendReceiveMaxSize
@Haroon-Khel : can you initiate this test again. I have forgotten how to regenerate from the data above.
fyi: this test fails for two reasons:
a) the test incorrectly believes AIX is running an active world IPv6 address. By default the IPv6 stack is active - for lo0 and address ::1 b) even for ::1 (and 127.0.0.1) AIX acts differently than Linux and others. c) when there is an active IPv6 (WAN) - the address is on en1 - and the test doesn't seem to find it.
My recommendation is to put this test on the 'skip' list - as it will take forever if upstream is fast. Never is the more likely stream for getting this fixed upstream.
Again, the tests - as written, do not account for the way that AIX reacts to NULL (rather than empty string ""
); and, they assume a full IPv6 stack active when ::1 is available - which is not the case.
Since 1999 (when AIX 4.3 came out - if not earlier (AIX 4.2 might have already had it) - lo0
has had IPv6 address ::1
active by default - while the physical
and later virtual
NIC do not have any IPv6 address (the so-called local IPv6 with prefix
fe00:). Neither has AIX IPv6 made (much, if any) use of the
%` syntax for multiple addresses with a common base address. Rather, each interface (en0. en1) has it's own unique address.
Further, at OSUOSL the only other interface to have an IPv6 address, if there is one, is en1
- while the tests (again) presume it is ent0
and en0
.
imho: until behavior is studied in detail - skip the tests failing. iirc, the failure comes from a common routine in all the tests that fails before any actual new test component gets tried. Been 18+ months since I studied this. Responses from upstream were just too slow to get anything finished. Too many layers protecting their forums from spam posters. Or something like that.
Some ipv6 tests continue to fail on all of our aix machines. The tests being:
java/net/DatagramSocket/DatagramSocketExample.java.DatagramSocketExample java/net/DatagramSocket/DatagramSocketMulticasting.java.DatagramSocketMulticasting java/net/MulticastSocket/SetOutgoingIf.java.SetOutgoingIf java/net/MulticastSocket/JoinLeave.java.JoinLeave java/net/MulticastSocket/Promiscuous.java.Promiscuous java/nio/channels/DatagramChannel/AdaptorMulticasting.java.AdaptorMulticasting
Fail with
It is known upstream that these tests will fail if ipv6 is not correctly configured https://bugs.openjdk.java.net/browse/JDK-8278122
These tests belong to the jdk_net test target. Most recent failure was during the jdk18+36 release https://ci.adoptopenjdk.net/job/Test_openjdk18_hs_extended.openjdk_ppc64_aix_testList_0/24/testReport/