You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Artem Shutak (JIRA)" <ji...@apache.org> on 2016/04/11 19:03:25 UTC

[jira] [Resolved] (IGNITE-2645) Assertion error in ATOMIC cachce for invokeAll and cache store

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

Artem Shutak resolved IGNITE-2645.
----------------------------------
    Resolution: Fixed

Merged at master.

> Assertion error in ATOMIC cachce for invokeAll and cache store
> --------------------------------------------------------------
>
>                 Key: IGNITE-2645
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2645
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: ignite-1.4
>            Reporter: Alexey Goncharuk
>            Assignee: Artem Shutak
>              Labels: community
>             Fix For: 1.6
>
>         Attachments: EntryProcessorFails.java
>
>
> Assertion happens under the following conditions:
>  * Cache is empty
>  * Cache store contains non-null values for some keys
>  * invokeAll is invoked for those keys
> Update version is generated when update request reaches the primary node. Then, we need to read-through stored values (the cache is empty) and pass them to transformers. Since read-through changes entry version, subsequent update fails with an assertion because read-through version is generated later than update version.
> The scenario when a read-through is implemented via a separate loop with innerGet() is possible only with invokeAll() because this is the only multi-key cache operation that requires the previous entry value.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)