[
https://issues.apache.org/jira/browse/IGNITE-2969?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15313254#comment-15313254
]
Andrey Gura commented on IGNITE-2969:
-------------------------------------
Reworked behaviour of {{IgniteDhtTxLocal}} in case of timeout before creation
prepare future.
Also found problem that leads to {{ConcurrentModificationException}} in case
when deadlock detection tries get all entries of transaction and transaction
proceeds roll back. It seems that {{IgniteTxStateImpl}} class should use
concurrent collection for {{txMap}} field.
At this moment there is one failover test which sometimes hangs due to a node
restarts. As result we have uncompleted {{GridDhtColocatedLockFuture}} and
corresponding transaction continues to hold locks on keys. It is possible that
this problem doesn't related with optimistic transaction changes but I think it
should be fixed as part of this ticket. It requires additional debugging.
Also I found that {{ClusterTopologyException}} during keys locking lead to call
{{GridDhtColocatedFuture.onDone(Throwable err)}}. From my point of view this
behaviour is incorrect because {{GridDhtColocatedFuture.onComplete}} will not
be invoked and keys will not be unlocked. Better way is to call
{{GridDhtColocatedFuture.onDone(Boolean success, Throwable err)}} method in
this case.
> Optimistic transactions support in deadlock detection
> -----------------------------------------------------
>
> Key: IGNITE-2969
> URL: https://issues.apache.org/jira/browse/IGNITE-2969
> Project: Ignite
> Issue Type: Improvement
> Components: cache
> Reporter: Andrey Gura
> Assignee: Andrey Gura
> Fix For: 1.7
>
>
> Deadlock detection doesn't support optimistic transactions now. It should be
> implemented.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)