[ 
https://issues.apache.org/jira/browse/IGNITE-27016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18062372#comment-18062372
 ] 

Kirill Anisimov commented on IGNITE-27016:
------------------------------------------

The failure of {{GridCacheAtomicMultiJvmFullApiSelfTest}} / 
{{GridCachePartitionedMultiJvmFullApiSelfTest}} in multi-JVM mode with 
ZooKeeper discovery was caused by the way the remote JVM configuration was 
prepared.
h2. What was happening

A remote node is started via {{IgniteProcessProxy}} → {{{}IgniteNodeRunner{}}}. 
The {{IgniteConfiguration}} is passed to the remote JVM through a temporary XML 
file (XStream).

In {{{}IgniteNodeRunner.storeToFile(.., resetDiscovery){}}}, for some scenarios 
(when {{{}resetDiscovery=true{}}}) the discovery SPI in the stored 
configuration was reset:
 * {{cfg0.setDiscoverySpi(null);}}

Then, on the remote JVM side, 
{{IgniteNodeRunner.readCfgFromFileAndDeleteFile(...)}} applied a fallback:
 * if {{{}cfg.getDiscoverySpi() == null{}}}, it sets {{TcpDiscoverySpi}} with 
{{{}LOCAL_IP_FINDER{}}}.

As a result, the remote process started with {*}TCP discovery{*}, while the 
local test JVM expected the remote node to join the topology using {*}ZooKeeper 
discovery{*}. The node never joined, and {{IgniteProcessProxy}} failed with:
{{{}Remote node has not joined ...{}}}.

> Test GridCacheAtomicMultiJvmFullApiSelfTest fails when started with ZooKeeper 
> Discovery
> ---------------------------------------------------------------------------------------
>
>                 Key: IGNITE-27016
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27016
>             Project: Ignite
>          Issue Type: Task
>          Components: zookeeper
>            Reporter: Sergey Chugunov
>            Assignee: Kirill Anisimov
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain, Newbie, ignite-2, ise
>             Fix For: 2.19
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Test 
> [fails|https://ci2.ignite.apache.org/project.html?projectId=IgniteTests24Java8&testNameId=-1189263754594131880&tab=testDetails&branch_IgniteTests24Java8=%3Cdefault%3E]
>  in master branch with 100% fail rate.
> An exception is thrown in "main" test logs saying that node in remote JVM 
> hasn't joined topology in time:
> {code:java}
> java.lang.AssertionError: Remote node has not joined 
> [id=3a39096c-c2ad-4467-a68f-0f031c900001]
>       at 
> org.apache.ignite.testframework.junits.multijvm.IgniteProcessProxy.<init>(IgniteProcessProxy.java:201)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startRemoteGrid(GridAbstractTest.java:1483)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startRemoteGrid(GridAbstractTest.java:1378)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:1339)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:1240)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheAbstractFullApiSelfTest.startGrid(GridCacheAbstractFullApiSelfTest.java:349)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:1216)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:1047)
>       at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrids(GridAbstractTest.java:889)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheAbstractSelfTest.beforeTestsStarted(GridCacheAbstractSelfTest.java:97)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheAbstractFullApiSelfTest.beforeTestsStarted(GridCacheAbstractFullApiSelfTest.java:213)
> {code}
> Logs of external node indicate that something is wrong with passing 
> configuration from the main test to external JVM as that node is started with 
> TcpDiscoverySpi instead of ZookeeperDiscovery:
> {noformat}
> [2025-11-11T10:25:19,351][INFO ][Thread-2925][jvm-3a39096c] 
> [2025-11-11T10:25:19,350][INFO 
> ][main][GridCacheAtomicMultiJvmFullApiSelfTest1] IgniteConfiguration 
> [igniteInstanceName=multijvm.GridCacheAtomicMultiJvmFullApiSelfTest1..., 
> discoSpi=TcpDiscoverySpi [addrRslvr=null, addressFilter=null,...]
> {noformat}
> It is needed to figure out why configuration is passed incorrectly and fix it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to