[ https://issues.apache.org/jira/browse/IGNITE-9976?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Pereslegin updated IGNITE-9976: ------------------------------------- Description: Test {{BinaryMetadataUpdatesFlowTest.testFlowNoConflicts}} fails sometimes on master branch. Example of recent failure: https://ci.ignite.apache.org/viewLog.html?buildId=2136137&tab=buildResultsDiv&buildTypeId=IgniteTests24Java8_BinaryObjects#testNameId-3561618975502992496 Typical failure 1: {noformat} [2018-10-20 16:26:55,321][ERROR][main][root] Test failed. junit.framework.AssertionFailedError: There are less than expected entries, data loss occurred; expected:<5000> but was:<4108> at junit.framework.Assert.fail(Assert.java:57) at junit.framework.Assert.failNotEquals(Assert.java:329) at junit.framework.Assert.assertEquals(Assert.java:78) at junit.framework.Assert.assertEquals(Assert.java:234) at junit.framework.TestCase.assertEquals(TestCase.java:401) at org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest.testFlowNoConflicts(BinaryMetadataUpdatesFlowTest.java:309) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at junit.framework.TestCase.runTest(TestCase.java:176) at org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2176) at org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:142) at org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:2091) at java.lang.Thread.run(Thread.java:748) {noformat} Suggested solution - with {{PRIMARY_SYNC}} cache write synchronization mode (default) on unstable topology we should await {{PME}} before call {{IgniteCache#size()}}. Typical failure 2: {noformat} java.lang.AssertionError: Error occurred on grid stop (see log for more details). ... [ERROR][node-killer-thread][root] Failed to stop grid [igniteInstanceName=binary.BinaryMetadataUpdatesFlowTest2, cancel=false] class org.apache.ignite.internal.IgniteInterruptedCheckedException: sleep interrupted at org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:7783) at org.apache.ignite.testframework.GridTestUtils.waitForCondition(GridTestUtils.java:1737) at org.apache.ignite.testframework.junits.GridAbstractTest.awaitTopologyChange(GridAbstractTest.java:2325) at org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1187) at org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1162) at org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1462) at org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest.access$900(BinaryMetadataUpdatesFlowTest.java:65) at org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest$ServerNodeKiller.run(BinaryMetadataUpdatesFlowTest.java:444) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.InterruptedException: sleep interrupted at java.lang.Thread.sleep(Native Method) at org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:7778) ... 8 more {noformat} Suggested solution - in test framework don't interrupt thread from which we call the {{stopGrid}}. was: Test {{BinaryMetadataUpdatesFlowTest.testFlowNoConflicts}} fails sometimes on master branch. Example of recent failure: https://ci.ignite.apache.org/viewLog.html?buildId=2136137&tab=buildResultsDiv&buildTypeId=IgniteTests24Java8_BinaryObjects#testNameId-3561618975502992496 Typical output: {noformat} [2018-10-20 16:26:55,321][ERROR][main][root] Test failed. junit.framework.AssertionFailedError: There are less than expected entries, data loss occurred; expected:<5000> but was:<4108> at junit.framework.Assert.fail(Assert.java:57) at junit.framework.Assert.failNotEquals(Assert.java:329) at junit.framework.Assert.assertEquals(Assert.java:78) at junit.framework.Assert.assertEquals(Assert.java:234) at junit.framework.TestCase.assertEquals(TestCase.java:401) at org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest.testFlowNoConflicts(BinaryMetadataUpdatesFlowTest.java:309) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at junit.framework.TestCase.runTest(TestCase.java:176) at org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2176) at org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:142) at org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:2091) at java.lang.Thread.run(Thread.java:748) {noformat} With {{PRIMARY_SYNC}} cache write synchronization mode on unstable topology we should await {{PME}} before call {{size()}}. > [Test Failed] BinaryMetadataUpdatesFlowTest.testFlowNoConflicts flaky fails > on TC. > ---------------------------------------------------------------------------------- > > Key: IGNITE-9976 > URL: https://issues.apache.org/jira/browse/IGNITE-9976 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.6 > Reporter: Pavel Pereslegin > Assignee: Pavel Pereslegin > Priority: Minor > Labels: MakeTeamcityGreenAgain > Fix For: 2.8 > > > Test {{BinaryMetadataUpdatesFlowTest.testFlowNoConflicts}} fails sometimes on > master branch. > Example of recent failure: > https://ci.ignite.apache.org/viewLog.html?buildId=2136137&tab=buildResultsDiv&buildTypeId=IgniteTests24Java8_BinaryObjects#testNameId-3561618975502992496 > Typical failure 1: > {noformat} > [2018-10-20 16:26:55,321][ERROR][main][root] Test failed. > junit.framework.AssertionFailedError: There are less than expected entries, > data loss occurred; expected:<5000> but was:<4108> > at junit.framework.Assert.fail(Assert.java:57) > at junit.framework.Assert.failNotEquals(Assert.java:329) > at junit.framework.Assert.assertEquals(Assert.java:78) > at junit.framework.Assert.assertEquals(Assert.java:234) > at junit.framework.TestCase.assertEquals(TestCase.java:401) > at > org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest.testFlowNoConflicts(BinaryMetadataUpdatesFlowTest.java:309) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at junit.framework.TestCase.runTest(TestCase.java:176) > at > org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2176) > at > org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:142) > at > org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:2091) > at java.lang.Thread.run(Thread.java:748) > {noformat} > Suggested solution - with {{PRIMARY_SYNC}} cache write synchronization mode > (default) on unstable topology we should await {{PME}} before call > {{IgniteCache#size()}}. > Typical failure 2: > {noformat} > java.lang.AssertionError: Error occurred on grid stop (see log for more > details). > ... > [ERROR][node-killer-thread][root] Failed to stop grid > [igniteInstanceName=binary.BinaryMetadataUpdatesFlowTest2, cancel=false] > class org.apache.ignite.internal.IgniteInterruptedCheckedException: sleep > interrupted > at > org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:7783) > at > org.apache.ignite.testframework.GridTestUtils.waitForCondition(GridTestUtils.java:1737) > at > org.apache.ignite.testframework.junits.GridAbstractTest.awaitTopologyChange(GridAbstractTest.java:2325) > at > org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1187) > at > org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1162) > at > org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1462) > at > org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest.access$900(BinaryMetadataUpdatesFlowTest.java:65) > at > org.apache.ignite.internal.processors.cache.binary.BinaryMetadataUpdatesFlowTest$ServerNodeKiller.run(BinaryMetadataUpdatesFlowTest.java:444) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.InterruptedException: sleep interrupted > at java.lang.Thread.sleep(Native Method) > at > org.apache.ignite.internal.util.IgniteUtils.sleep(IgniteUtils.java:7778) > ... 8 more > {noformat} > Suggested solution - in test framework don't interrupt thread from which we > call the {{stopGrid}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)