ASF GitHub Bot commented on IGNITE-7898:

GitHub user Jokser opened a pull request:


    IGNITE-7898 Fixed IgniteCachePartitionLossPolicy tests


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gridgain/apache-ignite ignite-7898

Alternatively you can review and apply these changes as the patch at:


To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3626
commit 7cc9e112316b01d527720c3ed85114d69c8b58ad
Author: Pavel Kovalenko <jokserfn@...>
Date:   2018-03-13T12:30:07Z

    IGNITE-7898 Fixed IgniteCachePartitionLossPolicy tests


> IgniteCachePartitionLossPolicySelfTest is flaky on TC
> -----------------------------------------------------
>                 Key: IGNITE-7898
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7898
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.4
>            Reporter: Pavel Kovalenko
>            Assignee: Pavel Kovalenko
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain
> Affected tests:
> testReadOnlyAll
> testReadWriteSafe
> Exception:
> {code:java}
> junit.framework.AssertionFailedError: Failed to find expected lost partition 
> [exp=0, lost=[]]
>     at 
> org.apache.ignite.internal.processors.cache.distributed.IgniteCachePartitionLossPolicySelfTest.verifyCacheOps(IgniteCachePartitionLossPolicySelfTest.java:219)
>     at 
> org.apache.ignite.internal.processors.cache.distributed.IgniteCachePartitionLossPolicySelfTest.checkLostPartition(IgniteCachePartitionLossPolicySelfTest.java:166)
>     at 
> org.apache.ignite.internal.processors.cache.distributed.IgniteCachePartitionLossPolicySelfTest.testReadWriteSafe(IgniteCachePartitionLossPolicySelfTest.java:114)
> {code}
> The problem of failure:
> After we prepare topology and shutdown the node containing lost partition we 
> start to check it immediately on all nodes (cache.lostPartitions() method). 
> Sometimes we invoke this method on client node where last PME is not even 
> started and getting empty list of lost partitions because we haven't received 
> it yet on PME.
> Possible solution:
> Wait for PME finishing on all nodes (including client) before start to check 
> for lost partitions.

This message was sent by Atlassian JIRA

Reply via email to