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

Alexandr Kuramshin commented on IGNITE-6507:
--------------------------------------------

I've found that after {{GridDhtTxPrepareFuture.onNodeLeft()}} makes all its 
miniFuts done, and {{GridNearTxLocal}} prepareFut.listener calls 
{{GridNearTxFinishFuture.finish(true, true)}} (with commit) then 
{{GridDhtTxFinishRequest}} will be send.

Upon sending {{GridDhtTxFinishRequest}} a {{ClusterTopologyCheckedException}} 
will be thrown and {{GridDhtTxFinishFuture.MiniFuture.onNodeLeft()}} makes 
{{GridNearTxLocal}} successfully committed.

[~ascherbakov],

do you suppose to be transaction rolled back when 
{{GridDhtTxPrepareFuture.onNodeLeft()}} occurs?

> Commit can be lost in network split scenario
> --------------------------------------------
>
>                 Key: IGNITE-6507
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6507
>             Project: Ignite
>          Issue Type: Bug
>          Components: general
>    Affects Versions: 2.1
>            Reporter: Alexei Scherbakov
>            Priority: Critical
>              Labels: important
>             Fix For: 2.4
>
>
> Commit can be lost in network split scenario
> Reproducer:
> https://github.com/ascherbakoff/ignite/blob/ignite-6507/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCacheTopologySplitTxConsistencyTest.java
> If routing will be switched to second data center, new transactions will no 
> see commited state.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to