ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrey Gura (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-2854) Need to implement deadlock detection
Date Wed, 30 Mar 2016 23:18:25 GMT

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

Andrey Gura edited comment on IGNITE-2854 at 3/30/16 11:18 PM:
---------------------------------------------------------------

At this moment search of the first deadlock (cycle in wait-for-graph) implemented as {{DeadlockDetection}}
class that used by {{IgniteTxManager}}. Messaging implemented via {{GridIoManager}} and new
{{TOPIC_TX}} topic. If deadlock detected then detector prints out transaction IDs that involved
into deadlock and keys that cause of deadlock.

Need to extend current algorithm for finding all possible deadlocks for active near transactions
on current node. At the same time detection have to request from remote nodes only transactions
that contain the same keys as transactions on the local node. It allows to reduce network
traffic but increases possible requests amount in cases when deadlock wasn't detected.

Also need to find out better way for reporting found deadlocks.


was (Author: agura):
At this moment search of the first deadlock (cycle in wait-for-graph) implemented as {{DeadlockDetection}}
class that used by {{IgniteTxManager}}. Messaging implemented via {{GridIoManager}} and new
{{TOPIC_TX}} topic. If deadlock detected then detector prints out transaction IDs that involved
into deadlock and keys that cause of deadlock.

Need to extend current algorithm for finding all possible deadlocks for active near transactions
on current node. At the same time detection have to request from remote nodes only transactions
that contain the same keys as transactions on the local node. It allows to reduce network
traffic but increases possible requests in cases when deadlock wasn't detected.

Also need to find out better way for reporting found deadlocks.

> Need to implement deadlock detection
> ------------------------------------
>
>                 Key: IGNITE-2854
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2854
>             Project: Ignite
>          Issue Type: New Feature
>          Components: cache
>    Affects Versions: 1.5.0.final
>            Reporter: Valentin Kulichenko
>            Assignee: Andrey Gura
>             Fix For: 1.6
>
>
> Currently, if transactional deadlock occurred, there is no easy way to find out which
locks were reordered.
> We need to add a mechanism that will collect information about awating candidates, analyze
it and show guilty keys. Most likely this should be implemented with the help of custom discovery
message.
> In addition we should automatically execute this mechanism if transaction times out and
add information to timeout exception.



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

Mime
View raw message