You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey Gura (JIRA)" <ji...@apache.org> on 2017/06/02 15:04:04 UTC

[jira] [Commented] (IGNITE-5283) Transaction recovery works incorrectly with cache store and writeThrough enabled

    [ https://issues.apache.org/jira/browse/IGNITE-5283?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16034825#comment-16034825 ] 

Andrey Gura commented on IGNITE-5283:
-------------------------------------

Need to port to 2.0

> Transaction recovery works incorrectly with cache store and writeThrough enabled
> --------------------------------------------------------------------------------
>
>                 Key: IGNITE-5283
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5283
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 1.7
>            Reporter: Andrey Gura
>            Assignee: Andrey Gura
>             Fix For: 2.1
>
>
> Transaction (at least optimistic) recovery on backups works incorrectly when cache store and writeThrough enabled. Changes aren't propagated to DB (it's correct) but propagated to cache if primary node left topology.
> It happens because {{IgniteTxRemoteStateAdapter.storeUsed()}} method always returns {{false}}. As result incorrect code branch executes in {{NodeFailureTimeoutObject.onTimeout0()}} method ({{salvageTx()}} method should be invoked).
> *Steps to reproduce*:
> - Start two nodes A and B with cache. Cache store and writeThrough are anbled.
> - From node A start optimistic transaction which executes put/update operation for key. Node A should be primary for this key.
> - Kill node A when {{CacheStore.sessionEnd()}} method is invoked but changes are not propagated to underlying database (before commit on connection).
> - DB doesn't contain changes but node B contains it.
> *Expected behaviour:*
> All changes should be rolled back.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)