[
https://issues.apache.org/jira/browse/IGNITE-19179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksandr Polovtcev updated IGNITE-19179:
-----------------------------------------
Fix Version/s: 3.0.0-beta2
> ItClusterManagerTest#testNodeRestart start to fail after LogicalNode
> introducing
> --------------------------------------------------------------------------------
>
> Key: IGNITE-19179
> URL: https://issues.apache.org/jira/browse/IGNITE-19179
> Project: Ignite
> Issue Type: Bug
> Reporter: Mirza Aliev
> Assignee: Aleksandr Polovtcev
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-beta2
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> While https://issues.apache.org/jira/browse/IGNITE-18953 was implementing,
> {{ItClusterManagerTest#testNodeRestart}} started to fail periodically.
>
> {noformat}
> java.lang.AssertionError:
> Expected: is iterable with items [<ClusterNode
> [id=ac994fa6-d2d3-42e4-a247-fc437792b617, name=icmt_tnr_10000,
> address=127.0.0.1:10000, nodeMetadata=null]>, <ClusterNode
> [id=622f46cb-3f34-4aa7-8332-ce0aa90980e8, name=icmt_tnr_10001,
> address=127.0.0.1:10001, nodeMetadata=null]>] in any order
> but: was <[ClusterNode [id=ac994fa6-d2d3-42e4-a247-fc437792b617,
> name=icmt_tnr_10000, address=127.0.0.1:10000, nodeMetadata=null]]>
> Expected :is iterable with items [<ClusterNode
> [id=ac994fa6-d2d3-42e4-a247-fc437792b617, name=icmt_tnr_10000,
> address=127.0.0.1:10000, nodeMetadata=null]>, <ClusterNode
> [id=622f46cb-3f34-4aa7-8332-ce0aa90980e8, name=icmt_tnr_10001,
> address=127.0.0.1:10001, nod ...Actual :<[ClusterNode
> [id=ac994fa6-d2d3-42e4-a247-fc437792b617, name=icmt_tnr_10000,
> address=127.0.0.1:10000, nodeMetadata=null]]>
> <Click to see difference>
> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:6)
> at
> org.apache.ignite.internal.cluster.management.ItClusterManagerTest.testNodeRestart(ItClusterManagerTest.java:174)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at
> org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
> at
> org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
> at
> {noformat}
>
> From the log with additional debug logging we can see, that after we call
> {{waitForLogicalTopology()}} we still write some new topology to
> {{{}LogicalTopologyImpl#storage{}}}, moreover we write topology that contains
> only learner node, or even empty topology, which is definitely wrong. Seems
> that there is some race and topology in {{waitForLogicalTopology()}} is not a
> final topology after restart, so after that assertion fails, because topology
> snapshot changes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)