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