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

Andrey Gura commented on IGNITE-2854:
-------------------------------------

Deadlock report improved and looks like:

{noformat}
Deadlock detected:

K5: TX1 holds lock, [TX4] wait lock.
K1: TX2 holds lock, [TX1] wait lock.
K7: TX3 holds lock, [TX2] wait lock.
K14: TX4 holds lock, [TX3] wait lock.

Transactions:

TX1 [txId=GridCacheVersion [topVer=71893606, nodeOrderDrId=4, 
globalTime=1460413605747, order=1460413604719], 
nodeId=37bff732-e1a1-4e7b-8df9-dc5658800003, threadId=620]
TX2 [txId=GridCacheVersion [topVer=71893606, nodeOrderDrId=1, 
globalTime=1460413605747, order=1460413601448], 
nodeId=11111dad-e670-4ab8-b726-d4d366600000, threadId=617]
TX3 [txId=GridCacheVersion [topVer=71893606, nodeOrderDrId=2, 
globalTime=1460413605748, order=1460413604719], 
nodeId=1de6fe2c-f5a8-4e97-8433-9bfdaee00001, threadId=619]
TX4 [txId=GridCacheVersion [topVer=71893606, nodeOrderDrId=3, 
globalTime=1460413605749, order=1460413604719], 
nodeId=f8ab43fa-8859-4aad-9b89-1594c9700002, threadId=618]

Keys:

K1 [key=1, cache=cache]
K2 [key=136, cache=cache]
K3 [key=137, cache=cache]
K4 [key=411, cache=cache]
K5 [key=11, cache=cache]
K6 [key=479, cache=cache]
K7 [key=2, cache=cache]
K8 [key=275, cache=cache]
K9 [key=274, cache=cache]
K10 [key=273, cache=cache]
K11 [key=337, cache=cache]
K12 [key=342, cache=cache]
K13 [key=341, cache=cache]
K14 [key=3, cache=cache]
K15 [key=350, cache=cache]
K16 [key=343, cache=cache]
K17 [key=408, cache=cache]
{noformat}

Need to remove redundunt keys from report and add tests/

> 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)

Reply via email to