Ashwani Raina has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/23630 )

Change subject: [tests] Add IPv6 coverage to multiple tests
......................................................................


Patch Set 2:

(7 comments)

http://gerrit.cloudera.org:8080/#/c/23630/2//COMMIT_MSG
Commit Message:

PS2:
> At this point it's time to double check, I guess: what is ipv6-only mode, a
ipv6-only mode is when sockets are restricted to receive and send ipv6 packets 
only.
Yes, it is possible to disallow packets from IPv4-on-IPv6 address if server 
socket is configured with IPV6_V6ONLY socket option.

There is an existing gerrit patch that was posted before this one that takes 
care of setting socket option to IPV6_V6ONLY, when "ipv6" config mode is set.
https://gerrit.cloudera.org/#/c/23651/

Ideally, 23651 should be reviewed first and then this one.

'dual' mode, in this context, means rpc server running both protocol stacks, 
and capable to serve request from both IPv4 as well IPv6 sockets. It is a 
default behaviour for an interface configured with both IPv4 and IPv6 addresses.


http://gerrit.cloudera.org:8080/#/c/23630/2//COMMIT_MSG@16
PS2, Line 16: For client-test, the coverage is not added for 'dual' mode 
because of
            :   the additional time it takes to run those tests.
> +1 for adding SKIP_IF_SLOW_NOT_ALLOWED into tests if they run for more than
Done.


http://gerrit.cloudera.org:8080/#/c/23630/2//COMMIT_MSG@19
PS2, Line 19: - Some minor and miscellaneous changes to rename tests to get rid 
of
            :   CLANG tidy warnings.
> Please separate these updates into its own changelist, and add the actual I
Somehow, I am not able to locate the misc changes in this patch but I 
distinctly remember renaming tests reported by CLANG. If I find those changes, 
I will make sure to post a separate patch for those.


http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/jwt-util-test.cc
File src/kudu/util/jwt-util-test.cc:

http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/jwt-util-test.cc@125
PS2, Line 125: "ipv4", "ipv6", "dual"
> Here and elsewhere: I guess it's time to introduce constants for these toke
Done.
Please take a look: https://gerrit.cloudera.org/#/c/23707/


http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/net/net_util.cc
File src/kudu/util/net/net_util.cc:

http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/net/net_util.cc@524
PS2, Line 524: ToIpInterface(string* out)
> Given the code in this method, I think this name is very misleading.  'ToIp
Changed to ToLoopbackIpInterface.
Since this is needed only by test scaffolding, moved to right place.


http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/net/net_util.cc@537
PS2, Line 537:       *out = Substitute("[$0]", kWildcardIpV6Addr);
> This smells fishy.  Is this for test testing harness?  I'm not sure we shou
Actually, it is not. The third case i.e. DUAL is there for completeness 
purpose, just in case it is required to be used from non-test locations. 
Currently, ToIpInterface is not used for dual mode anywhere from the tests.
I am fine with removing this from here and probably return error for DUAL case.

Btw, we do use IPv4 wildcard address in some existing unit tests like 
kudu-tool-test.cc, webserver-test.


http://gerrit.cloudera.org:8080/#/c/23630/2/src/kudu/util/net/net_util.cc@859
PS2, Line 859:       if (fam == AF_INET6 || fam == AF_UNSPEC) {
             :         return kLoopbackIpV6Addr;
             :       }
> I don't think this provides the functionality required by UNIQUE_LOOPBACK.
We can use IPv4-mapped-IPv6 address range with 127.0.0.0/8 to make it unique 
but that is not really using a IPv6 stack in true sense when it comes to kernel 
 processing requests. A server listening on ::FFFF:127.0.0.1 (with disabled 
IPV6-V6ONLY) accepts ipv4 and ipv6 (per socket abstraction) client connections. 
However, with same config, the same connect call might fail if the client tries 
to connect to the same server after explicitly binding to a IPv6 loopback 
address i.e. ::1.

IPv4-mapped IPv6 address is not really a fair analogy when it comes to covering 
IPv6 scenario for a unique loopback. A strict counterpart for a UNIQUE_LOOPBACK 
in IPv6 doesn't exist.



--
To view, visit http://gerrit.cloudera.org:8080/23630
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Idc0df890c71e101964e7c7c84b5847963fab1451
Gerrit-Change-Number: 23630
Gerrit-PatchSet: 2
Gerrit-Owner: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <[email protected]>
Gerrit-Comment-Date: Tue, 25 Nov 2025 13:58:14 +0000
Gerrit-HasComments: Yes

Reply via email to