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

Igor Seliverstov commented on IGNITE-9322:
------------------------------------------

[~Pavlukhin], see my comments below:
1) Why you use MvccMessage as an interface for deadlock messages?
2) Make DdCollaborator a separate manager and put it into cache shared context 
at the last place.
3) Put all listeners and corresponding logic into this new manager.
4) I think request-reply logic is redundant, we can use only one message type 
and send it to all wait graph participants one by one, rolling back a tx as 
soon as we get an previously sent message back.

> MVCC: implement deadlock detector
> ---------------------------------
>
>                 Key: IGNITE-9322
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9322
>             Project: Ignite
>          Issue Type: Task
>          Components: mvcc
>            Reporter: Vladimir Ozerov
>            Assignee: Ivan Pavlukhin
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain
>
> Deadlocks are not uncommon during SQL execution.
> We need to implement distributed deadlock detection protocol for MVCC. 
> Essentially, nodes should exchange some map of tx wait lists, and try to find 
> a loop. If loop is found, then one of problematic transactions should be 
> rolled back.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to