Request for JCK17 tests exclusion
Nandagiri, Ramadasu (NSDi)
ramadasu.nandagiri at hpe.com
Wed Oct 18 14:55:04 UTC 2023
Hi,
Please see the discussion in the following mails. One of the TCK test cases, api/java_net/MulticastSocket/ClassLevel.html is failing on NonStop platform as NonStop doesn't support IP_MULTICAST_ALL option.
We would like this test case to be excluded from TCK. Please share your thoughts on this request.
Regards,
Ramdas
________________________________
From: conformance-octla-private <conformance-octla-private-retn at openjdk.org> on behalf of Dmitry Bessonov <dmitry.bessonov at oracle.com>
Sent: Saturday, October 14, 2023 3:23 PM
To: Bhat, Suma Mudakare Bheema (NSDi) <suma.mud.bhat at hpe.com>
Cc: conformance-octla-private at openjdk.java.net <conformance-octla-private at openjdk.java.net>
Subject: Re: Request for JCK17 tests exclusion
Hi Suma,
Thank you for providing more details. They seem to be reflecting NonStop implementation specifics and issues, which may not be convincing reason to exclude a JCK test.
The test looks conforming to the specification and passes on the JavaSE 17 Reference Implementation. If you believe the test is incorrect we would appreciate to know where the test is making incorrect assumption or doesn't follow the specification.
If you think that there might be a problem with JavaSE 17 specification or the implementation per spec is not possible on your platform, the place for related communication could be net-dev at openjdk.org or core-libs-dev at openjdk.org.
Kind regards,
JCK Team
> On 13 Oct 2023, at 14:30, Bhat, Suma Mudakare Bheema (NSDi) <suma.mud.bhat at hpe.com> wrote:
>
> Thanks Krushna for your response.
>
> Thanks for excluding the testcase api/java_net/MulticastSocket/SupportedOptionsTest.html.
>
> Please find additional details from our side regarding the testcase api/java_net/MulticastSocket/ClassLevel.html.
>
> Snippet from your mail:
> Behavior on NonStop platform, when socket relinquishes membership from a group is still getting the datagrams sent to that group.
> Suspecting there could be some issue with the port configuration w.r.to multicast handling.
>
> Our response: We compared NonStop Java code for socket creation with Linux specific Java code. On Linux, testcase passes because it supports IP_MULTICAST_ALL option as given below(See: code snippet). It disables IP_MULTICAST_ALL for the socket created on Linux. We have compared C and Java testcase behavior on Linux. We have observed that IP_MULTICAST_ALL makes the difference. NonStop CIP stack (aka TCP/IP stack) doesn't have the behavior of enabling/disabling of IP_MULTICAST_ALL option as it is not supported. Hence, the testcase fails on the NonStop platform. So, we are requesting for the exclusion of the testcase.
>
> #if defined(__linux__)
> if (type == SOCK_DGRAM) {
> int arg = 0;
> int level = (domain == AF_INET6) ? IPPROTO_IPV6 : IPPROTO_IP;
> if ((setsockopt(fd, level, IP_MULTICAST_ALL, (char*)&arg, sizeof(arg)) < 0) &&
> (errno != ENOPROTOOPT)) {
> JNU_ThrowByNameWithLastError(env,
> JNU_JAVANETPKG "SocketException",
> "Unable to set IP_MULTICAST_ALL");
> close(fd);
> return -1;
> }
> }
> ..
> ..
> #endif
>
> As per the manual for IPv4 implementation on Linux:
> IP_MULTICAST_ALL (since Linux 2.6.31)
> This option can be used to modify the delivery policy of
> multicast messages. The argument is a boolean integer
> (defaults to 1). If set to 1, the socket will receive
> messages from all the groups that have been joined
> globally on the whole system. Otherwise, it will deliver
> messages only from the groups that have been explicitly
> joined (for example via the IP_ADD_MEMBERSHIP option) on
> this particular socket.
>
> Please let us know if you need any other information on the same.
> Thanks and regards,
> Suma
>
> -----Original Message-----
> From: Krushnareddy Ganapureddy <krushnareddy.ganapureddy at oracle.com>
> Sent: Thursday, October 12, 2023 4:04 PM
> To: Bhat, Suma Mudakare Bheema (NSDi) <suma.mud.bhat at hpe.com>; conformance-octla-private at openjdk.java.net
> Cc: Nandagiri, Ramadasu (NSDi) <ramadasu.nandagiri at hpe.com>; Gragg, Jeffrey <jeff.gragg at hpe.com>
> Subject: RE: Request for JCK17 tests exclusion
>
> Hi Suma,
>
> - api/java_net/MulticastSocket/ClassLevel.html
>
> The test expectations as per Java SE conformance specification: (https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/net/MulticastSocket.html ) "When a socket subscribes to a multicast group/port, it receives datagrams sent by other hosts to the group/port, as do all other members of the group and port. A socket relinquishes membership in a group by the leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf) method. "
>
> Behavior on NonStop platform, when socket relinquishes membership from a group is still getting the datagrams sent to that group.
> Suspecting there could be some issue with the port configuration w.r.to multicast handling.
>
> - api/java_net/MulticastSocket/SupportedOptionsTest.html , we would be excluding this.
>
> Thanks & regards,
> Krushna.
>
>
> -----Original Message-----
> From: conformance-octla-private <conformance-octla-private-retn at openjdk.org> On Behalf Of Bhat, Suma Mudakare Bheema (NSDi)
> Sent: Monday, October 9, 2023 3:20 PM
> To: conformance-octla-private at openjdk.java.net; Dmitry Bessonov <dmitry.bessonov at oracle.com>
> Cc: Nandagiri, Ramadasu (NSDi) <ramadasu.nandagiri at hpe.com>; Gragg, Jeffrey <jeff.gragg at hpe.com>
> Subject: RE: Request for JCK17 tests exclusion
>
> Hi Dmitry,
> Thanks for your inputs. Please find updated tests exclusion request for two tests as below.
>
> Test Challenger Name and Company: Hewlett Packard Enterprise Specification Name(s) and Version(s): Java Platform SE 17 API Specifications Test Suite Name and Version: JCK-runtime-17 Exclude List Version: jck-17-upd-exc-23_jun_2023 Tests Name: api/java_net/MulticastSocket/ClassLevel.html
> api/java_net/MulticastSocket/SupportedOptionsTest.html
>
> Complaint (argument for why test is invalid):
> For testcase : api/java_net/MulticastSocket/ClassLevel.html:
> We are challenging this test case based on " Test assumes unreasonable hardware or software requirements".
> Our platform HPE NonStop doesn't support IP_MULTICAST_ALL, and also there is no equivalent option.
> For the testcase (api/java_net/MulticastSocket/SupportedOptionsTest.html), it needs support for Multicast Socket (IP_MULTICAST_ALL) in the native platform to pass. With the lack of support for multicast support in the native platform, this testcase fails on NonStop.
> I have attached .jtr file for this issue (ClassLevel.jtr)
>
> For testcase: api/java_net/MulticastSocket/SupportedOptionsTest.html:
> We are challenging this test case based on "Test assumes unreasonable hardware or software requirements".
> Our platform HPE NonStop doesn't support IP_MULTICAST_IF on a loop back interface.
> This testcase tries to set IP_MULTICAST_IF on a loop back interface. This is not supported on NonStop platform.
> Hence, this testcase fails. We think, either check for this support should be verified by calling the API (supportsMulticast()) before setting IP_MULTICAST_IF option in the testcase, Or this testcase should be excluded.
> I have attached .jtr file for this issue (SupportedOptionsTest.jtr)
>
> There is no specific mention about these socket options in our networking manual. Hence, I have attached the mail communication with our networking team regarding the non-supportability of these options on NonStop.
>
> Thanks and Regards,
> Suma
>
>
> -----Original Message-----
> From: Dmitry Bessonov <dmitry.bessonov at oracle.com>
> Sent: Tuesday, October 3, 2023 2:12 AM
> To: Bhat, Suma Mudakare Bheema (NSDi) <suma.mud.bhat at hpe.com>
> Cc: conformance-octla-private at openjdk.java.net
> Subject: Re: Request for TCK17 tests exclusion
>
> Hi Suma,
>
> We would much appreciate to have more information regarding specifically which exact part of the normative JavaSE 17 specification the tests contradict.
>
> This would help to process the challenge following JCK17 User’s Guide, Chapter 2.3 "JCK Test Appeals Process”. It would allow to confirm each test’s validity or invalidity which are determined basing on technical correctness - see 2.3 for the possible list of justifications. Please note that the same Chapter 2.3 also mentions that "challenges based upon issues unrelated to technical correctness as defined by the specification will normally be rejected.”
>
> Thank you in advance,
>
> Best Regards,
> JCK Team
>
>> On 28 Sep 2023, at 13:55, Bhat, Suma Mudakare Bheema (NSDi) <suma.mud.bhat at hpe.com> wrote:
>>
>> Hi,
>> Test Challenger Name and Company: Hewlett Packard Enterprise
>> Specification Name(s) and Version(s): Java Platform SE 17 API
>> Specifications Test Suite Name and Version: JCK-runtime-17 Exclude
>> List Version: jck-17-upd-exc-23_jun_2023 Tests Name:
>> api/java_net/MulticastSocket/ClassLevel.html
>>
>> api/java_net/MulticastSocket/SupportedOptionsTest.html
>> Complaint (argument for why test is invalid):
>> api/java_net/MulticastSocket/ClassLevel.html:
>> For this testcase, it needs support for Multicast Socket (IP_MULTICAST_ALL) to modify the delivery policy of multicast messages, in the native platform.
>> Our platform NonStop doesn’t have IP_MULTICAST_ALL support.
>> With the lack of support for multicast support, this testcase fails.
>> I have attached .jtr file for this issue (ClassLevel.jtr)
>> api/java_net/MulticastSocket/SupportedOptionsTest.html:
>> This testcase tries to set IP_MULTICAST_IF on a loop back interface. This is not supported on NonStop platform.
>> Hence, this testcase fails. We think, either check for this support
>> should be verified by calling the API (supportsMulticast()) before setting IP_MULTICAST_IF option, Or this testcase should be excluded.
>> I have attached .jtr file for this issue (SupportedOptionsTest.jtr)
>> Thanks and Regards, Suma
>>
>> <ClassLevel.jtr><SupportedOptionsTest.jtr>____________________________
>> ___________________ conformance-octla-private mailing list
>> conformance-octla-private at openjdk.org
>> INVALID URI REMOVED
>> conformance-octla-private__;!!NpxR!jgSANkxAYFdYELEXkxw4jk5YRV4TCNjtfsB
>> r3RNqovQ_kJm-0GhnL11uJ1NWAqPLjae2NMkD_NlG-m3Yg49hnNZf2rY$
>
>
> _______________________________________________
> conformance-octla-private mailing list
> conformance-octla-private at openjdk.org
> https://mail.openjdk.org/mailman/listinfo/conformance-octla-private
_______________________________________________
conformance-octla-private mailing list
conformance-octla-private at openjdk.org
https://mail.openjdk.org/mailman/listinfo/conformance-octla-private
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/core-libs-dev/attachments/20231018/2a1f762f/attachment-0001.htm>
More information about the core-libs-dev
mailing list