You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksey Plekhanov (Jira)" <ji...@apache.org> on 2025/12/29 19:06:00 UTC

[jira] [Updated] (IGNITE-27472) Test MetricsConfigurationTest is flaky

     [ https://issues.apache.org/jira/browse/IGNITE-27472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Plekhanov updated IGNITE-27472:
---------------------------------------
    Description: 
Test MetricsConfigurationTest is flaky. 
Fails with messages like:
{noformat}
 java.lang.AssertionError: array lengths differed, expected.length=2 actual.length=5
	at org.junit.Assert.fail(Assert.java:88) ~[junit-4.12.jar:4.12]
	at org.junit.internal.ComparisonCriteria.assertArraysAreSameLength(ComparisonCriteria.java:76) ~[junit-4.12.jar:4.12]
	at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:37) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.internalArrayEquals(Assert.java:532) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.assertArrayEquals(Assert.java:441) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.assertArrayEquals(Assert.java:452) ~[junit-4.12.jar:4.12]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.lambda$testConfigRemovedOnCacheRemove$14(MetricsConfigurationTest.java:378) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest$IgniteBiInClosureX.apply(MetricsConfigurationTest.java:511) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.checkOnStartAndRestart(MetricsConfigurationTest.java:488) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.testConfigRemovedOnCacheRemove(MetricsConfigurationTest.java:361) ~[test-classes/:?]
	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.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) ~[junit-4.12.jar:4.12]
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) ~[junit-4.12.jar:4.12]
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) ~[junit-4.12.jar:4.12]
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) ~[junit-4.12.jar:4.12]
	at org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2486) ~[test-classes/:?]
	at java.base/java.lang.Thread.run(Thread.java:829) ~[?:?]
{noformat}
Or
{noformat}
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start SPI: TcpDiscoverySpi [addrRslvr=null, addressFilter=null, sockTimeout=5000, ackTimeout=5000, marsh=JdkMarshallerImpl [clsFilter=org.apache.ignite.marshaller.IgniteMarshallerClassFilter@fbbedd80], reconCnt=10, reconDelay=2000, maxAckTimeout=600000, soLinger=0, clientReconnectDisabled=false, msgFactory=org.apache.ignite.internal.managers.communication.IgniteMessageFactoryImpl@2ed9ef99, skipAddrsRandomization=false]
	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:279)
	at org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:1066)
	at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1682)
	... 20 more
Caused by: class org.apache.ignite.spi.IgniteSpiException: Joining node has conflicting distributed metastorage data.
	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.checkFailedError(TcpDiscoverySpi.java:2033)
	at org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:1221)
	at org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:484)
	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:2124)
	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:276)
	... 22 more
{noformat}
Reason: In FSYNC WAL mode there is more time needed to save every metastorage key to disk, and after node start there are still some queue of key writing tasks ({{DmsDataWriterWorker#updateQueue}}). Nodes are stopped with {{cancel}} flag (by {{Ignite.close()}}), distributed metastorage tasks queue is cleared in this case, some tasks are uncompleted by the time of nodes stop and some metastorge keys lost after restart.

  was:
Test MetricsConfigurationTest is flaky. 
Fails with messages like:
{noformat}
 java.lang.AssertionError: array lengths differed, expected.length=2 actual.length=5
	at org.junit.Assert.fail(Assert.java:88) ~[junit-4.12.jar:4.12]
	at org.junit.internal.ComparisonCriteria.assertArraysAreSameLength(ComparisonCriteria.java:76) ~[junit-4.12.jar:4.12]
	at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:37) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.internalArrayEquals(Assert.java:532) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.assertArrayEquals(Assert.java:441) ~[junit-4.12.jar:4.12]
	at org.junit.Assert.assertArrayEquals(Assert.java:452) ~[junit-4.12.jar:4.12]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.lambda$testConfigRemovedOnCacheRemove$14(MetricsConfigurationTest.java:378) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest$IgniteBiInClosureX.apply(MetricsConfigurationTest.java:511) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.checkOnStartAndRestart(MetricsConfigurationTest.java:488) ~[test-classes/:?]
	at org.apache.ignite.internal.metric.MetricsConfigurationTest.testConfigRemovedOnCacheRemove(MetricsConfigurationTest.java:361) ~[test-classes/:?]
	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.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) ~[junit-4.12.jar:4.12]
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) ~[junit-4.12.jar:4.12]
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) ~[junit-4.12.jar:4.12]
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) ~[junit-4.12.jar:4.12]
	at org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2486) ~[test-classes/:?]
	at java.base/java.lang.Thread.run(Thread.java:829) ~[?:?]
{noformat}
Or
{noformat}
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start SPI: TcpDiscoverySpi [addrRslvr=null, addressFilter=null, sockTimeout=5000, ackTimeout=5000, marsh=JdkMarshallerImpl [clsFilter=org.apache.ignite.marshaller.IgniteMarshallerClassFilter@fbbedd80], reconCnt=10, reconDelay=2000, maxAckTimeout=600000, soLinger=0, clientReconnectDisabled=false, msgFactory=org.apache.ignite.internal.managers.communication.IgniteMessageFactoryImpl@2ed9ef99, skipAddrsRandomization=false]
	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:279)
	at org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:1066)
	at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1682)
	... 20 more
Caused by: class org.apache.ignite.spi.IgniteSpiException: Joining node has conflicting distributed metastorage data.
	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.checkFailedError(TcpDiscoverySpi.java:2033)
	at org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:1221)
	at org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:484)
	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:2124)
	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:276)
	... 22 more
{noformat}
Reason: In FSYNC WAL mode there is more time needed to save every metastorage key to disk, and after node start there are still some queue of key writing tasks ({{DmsDataWriterWorker#updateQueue}}). Nodes are stopped with {{cancel}} flag (by {{Ignite.close()}}), distributed metastorage tasks queue are cleared in this case, some tasks are uncompleted by the time of nodes stop and some metastorge keys lost after restart.


> Test MetricsConfigurationTest is flaky
> --------------------------------------
>
>                 Key: IGNITE-27472
>                 URL: https://issues.apache.org/jira/browse/IGNITE-27472
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Aleksey Plekhanov
>            Assignee: Aleksey Plekhanov
>            Priority: Major
>              Labels: ise
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Test MetricsConfigurationTest is flaky. 
> Fails with messages like:
> {noformat}
>  java.lang.AssertionError: array lengths differed, expected.length=2 actual.length=5
> 	at org.junit.Assert.fail(Assert.java:88) ~[junit-4.12.jar:4.12]
> 	at org.junit.internal.ComparisonCriteria.assertArraysAreSameLength(ComparisonCriteria.java:76) ~[junit-4.12.jar:4.12]
> 	at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:37) ~[junit-4.12.jar:4.12]
> 	at org.junit.Assert.internalArrayEquals(Assert.java:532) ~[junit-4.12.jar:4.12]
> 	at org.junit.Assert.assertArrayEquals(Assert.java:441) ~[junit-4.12.jar:4.12]
> 	at org.junit.Assert.assertArrayEquals(Assert.java:452) ~[junit-4.12.jar:4.12]
> 	at org.apache.ignite.internal.metric.MetricsConfigurationTest.lambda$testConfigRemovedOnCacheRemove$14(MetricsConfigurationTest.java:378) ~[test-classes/:?]
> 	at org.apache.ignite.internal.metric.MetricsConfigurationTest$IgniteBiInClosureX.apply(MetricsConfigurationTest.java:511) ~[test-classes/:?]
> 	at org.apache.ignite.internal.metric.MetricsConfigurationTest.checkOnStartAndRestart(MetricsConfigurationTest.java:488) ~[test-classes/:?]
> 	at org.apache.ignite.internal.metric.MetricsConfigurationTest.testConfigRemovedOnCacheRemove(MetricsConfigurationTest.java:361) ~[test-classes/:?]
> 	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.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) ~[junit-4.12.jar:4.12]
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) ~[junit-4.12.jar:4.12]
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) ~[junit-4.12.jar:4.12]
> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) ~[junit-4.12.jar:4.12]
> 	at org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2486) ~[test-classes/:?]
> 	at java.base/java.lang.Thread.run(Thread.java:829) ~[?:?]
> {noformat}
> Or
> {noformat}
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start SPI: TcpDiscoverySpi [addrRslvr=null, addressFilter=null, sockTimeout=5000, ackTimeout=5000, marsh=JdkMarshallerImpl [clsFilter=org.apache.ignite.marshaller.IgniteMarshallerClassFilter@fbbedd80], reconCnt=10, reconDelay=2000, maxAckTimeout=600000, soLinger=0, clientReconnectDisabled=false, msgFactory=org.apache.ignite.internal.managers.communication.IgniteMessageFactoryImpl@2ed9ef99, skipAddrsRandomization=false]
> 	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:279)
> 	at org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:1066)
> 	at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1682)
> 	... 20 more
> Caused by: class org.apache.ignite.spi.IgniteSpiException: Joining node has conflicting distributed metastorage data.
> 	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.checkFailedError(TcpDiscoverySpi.java:2033)
> 	at org.apache.ignite.spi.discovery.tcp.ServerImpl.joinTopology(ServerImpl.java:1221)
> 	at org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(ServerImpl.java:484)
> 	at org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.spiStart(TcpDiscoverySpi.java:2124)
> 	at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:276)
> 	... 22 more
> {noformat}
> Reason: In FSYNC WAL mode there is more time needed to save every metastorage key to disk, and after node start there are still some queue of key writing tasks ({{DmsDataWriterWorker#updateQueue}}). Nodes are stopped with {{cancel}} flag (by {{Ignite.close()}}), distributed metastorage tasks queue is cleared in this case, some tasks are uncompleted by the time of nodes stop and some metastorge keys lost after restart.



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