[
https://issues.apache.org/jira/browse/IGNITE-7871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16433743#comment-16433743
]
ASF GitHub Bot commented on IGNITE-7871:
----------------------------------------
GitHub user Jokser opened a pull request:
https://github.com/apache/ignite/pull/3793
IGNITE-7871 Check local join future on error.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/gridgain/apache-ignite ignite-7871-micro-fix
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/ignite/pull/3793.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #3793
----
commit 427cb4c4025534134bb448ecbdc1172845a7adaa
Author: Pavel Kovalenko <jokserfn@...>
Date: 2018-04-11T11:11:22Z
IGNITE-7871 Check local join future on error.
----
> Implement 2-phase waiting for partition release
> -----------------------------------------------
>
> Key: IGNITE-7871
> URL: https://issues.apache.org/jira/browse/IGNITE-7871
> Project: Ignite
> Issue Type: Improvement
> Components: cache
> Affects Versions: 2.4
> Reporter: Pavel Kovalenko
> Assignee: Alexey Goncharuk
> Priority: Major
> Fix For: 2.5
>
>
> Using validation implemented in IGNITE-7467 we can observe the following
> situation:
> Let's we have some partition and nodes which owning it N1 (primary) and N2
> (backup)
> 1) Exchange is started
> 2) N2 finished waiting for partitions release and started to create Single
> message (with update counters).
> 3) N1 waits for partitions release.
> 4) We have pending cache update N1 -> N2. This update is done after step 2.
> 5) This update increments update counters both on N1 and N2.
> 6) N1 finished waiting for partitions release, while N2 already sent Single
> message to coordinator with outdated update counter.
> 7) Coordinator sees different partition update counters for N1 and N2.
> Validation is failed, while data is equal.
> Solution:
> Every server node participating in PME should wait while all other server
> nodes will finish their ongoing updates (finish wait for partition release
> method)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)