[ https://issues.apache.org/jira/browse/IGNITE-2854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15227340#comment-15227340 ]
Andrey Gura commented on IGNITE-2854: ------------------------------------- Current deadlock detection implementation supports pessimistic transactions for all cache memory modes ({{LOCAL\PARTITIONED\REPLICATED}}). It tested with different type of initial nodes and order of lock acquiring. But there is problem with near cache enabled. It looks like some kind of race conditions on MVCC candidates queue (may be lock can be released not only from {{GridDhtLockFuture.onTimeout}} and {{GridNearLockFuture.onTimeout}}). Also need to support optimistic transactions. {{GridDhtTxPrepareFuture}} should create and register {{TimeoutObject}} and process timeouts like {{GridDhtLockFuture}}. > 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)