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

Pavel Kovalenko reassigned IGNITE-7987:
---------------------------------------

    Assignee: Alexey Goncharuk  (was: Pavel Kovalenko)

Fix is ready.
It also contains partial fix for cluster activation + parallel client node join 
problem.

TC: 
https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8&branch_IgniteTests24Java8=pull%2F3660%2Fhead

> Affinity may be not calculated properly in case of merged exchanges with 
> client nodes
> -------------------------------------------------------------------------------------
>
>                 Key: IGNITE-7987
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7987
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.4
>            Reporter: Pavel Kovalenko
>            Assignee: Alexey Goncharuk
>            Priority: Major
>             Fix For: 2.5
>
>
> Currently we pass only last (or first in some cases) discovery event for 
> affinity calculation at GridAffinityAssignmentCache.
> Affinity calculation can be skipped if such discovery event belongs to client 
> node or node filtered by nodeFilter for optimization issues (because affinity 
> will not be changed in such case).
> Since we have exchange merging there can be several discovery events 
> corresponds to one exchange. Passing only first or last event for affinity 
> calculation is wrong, because calculation in such case can be skipped, while 
> exchange actually contains events changing affinity.
> Instead of first/last event we should pass whole collection of discovery 
> events (ExchangeDiscoveryEvents) and skip affinity calculation for a group 
> only when ALL events doesn't change affinity for such group.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to