You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maxim Muzafarov (Jira)" <ji...@apache.org> on 2019/10/10 11:42:00 UTC

[jira] [Updated] (IGNITE-7882) Atomic update requests should always use topology mappings instead of affinity

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

Maxim Muzafarov updated IGNITE-7882:
------------------------------------
    Fix Version/s:     (was: 2.8)
                   2.9

> Atomic update requests should always use topology mappings instead of affinity
> ------------------------------------------------------------------------------
>
>                 Key: IGNITE-7882
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7882
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.4
>            Reporter: Pavel Kovalenko
>            Assignee: Pavel Kovalenko
>            Priority: Major
>             Fix For: 2.9
>
>
> Currently for mapping cache atomic updates we can use two ways:
> 1) Use nodes reporting status OWNING for partition where we send the update.
> 2) Use only affinity nodes mapping if rebalance is finished.
> Using the second way we may route update request only to affinity node, while there is also node which is still owner and can process read requests.
> It can lead to reading null values for some key, while update for such key was successful a moment ago.
> -------------------------
> Problem with using topology mapping:
> 1) We send update request with key K to near node N
> 2) N performs mapping for K to nodes P, B1, B2, B3 (Primary and backups) and starts waiting for succesful update responses for all of these nodes. 
> 3) N sends update request to P. During this time B3 change status to RENTING (Eviction).
> 4) P also performs mapping for K to backup nodes B1, B2.
> 5) All updates are succesful, but N is still waiting for response from B3. Update request will be not finished and hangs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)