[
https://issues.apache.org/jira/browse/IGNITE-29080?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksandr Nikolaev updated IGNITE-29080:
----------------------------------------
Description:
TcpDiscoveryVmIpFinderDnsResolveTest fails on JDK 18+:
{code}
======= Failed test run #1 ==========
nameServices
------- Stdout: -------
java.lang.NoSuchFieldException: nameServices
at java.base/java.lang.Class.getDeclaredField(Class.java:2784)
at
org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinderDnsResolveTest$INameService.uninstall(TcpDiscoveryVmIpFinderDnsResolveTest.java:577)
at
org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinderDnsResolveTest.cleanup(TcpDiscoveryVmIpFinderDnsResolveTest.java:85)
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
{code}
The test replaces the DNS resolver via reflection on the internal
InetAddress$NameService, which was removed in JDK 18 (JEP 418) and replaced
with java.net.spi.InetAddressResolver.
> Fix the TcpDiscoveryVmIpFinderDnsResolveTest for JDK 21
> -------------------------------------------------------
>
> Key: IGNITE-29080
> URL: https://issues.apache.org/jira/browse/IGNITE-29080
> Project: Ignite
> Issue Type: Task
> Reporter: Aleksandr Nikolaev
> Assignee: Aleksandr Nikolaev
> Priority: Minor
> Fix For: 2.19
>
>
> TcpDiscoveryVmIpFinderDnsResolveTest fails on JDK 18+:
>
>
> {code}
> ======= Failed test run #1 ==========
> nameServices
> ------- Stdout: -------
> java.lang.NoSuchFieldException: nameServices
> at java.base/java.lang.Class.getDeclaredField(Class.java:2784)
> at
> org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinderDnsResolveTest$INameService.uninstall(TcpDiscoveryVmIpFinderDnsResolveTest.java:577)
> at
> org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinderDnsResolveTest.cleanup(TcpDiscoveryVmIpFinderDnsResolveTest.java:85)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
> at java.base/java.lang.reflect.Method.invoke(Method.java:580)
> {code}
>
>
> The test replaces the DNS resolver via reflection on the internal
> InetAddress$NameService, which was removed in JDK 18 (JEP 418) and replaced
> with java.net.spi.InetAddressResolver.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)