[
https://issues.apache.org/jira/browse/IGNITE-18091?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Denis Chudov updated IGNITE-18091:
----------------------------------
Summary: Compare deadlock prevention implementations and work out decisions
about correct behavior in corner cases (was: Compare deadlock prevention
implementation and work out a decisions about correct behavior in corner cases)
> Compare deadlock prevention implementations and work out decisions about
> correct behavior in corner cases
> ---------------------------------------------------------------------------------------------------------
>
> Key: IGNITE-18091
> URL: https://issues.apache.org/jira/browse/IGNITE-18091
> Project: Ignite
> Issue Type: Task
> Reporter: Denis Chudov
> Assignee: Denis Chudov
> Priority: Major
> Labels: ignite-3
>
> *Motivation*
> Today we have several possible implementations of deadlock prevention: AI 3
> [1], transactions POC [2], and possible implementation based on concurrency
> control paper [3]. Moreover, we have a multiple granularity lock model [4]
> where some lock modes are compatible, others are not, which allows
> reenterability in some cases, and sharing of locks between transactions. We
> should understand the differences of behavior of each implementation in
> different scenarios, and how it matches with our expectations.
> *Definition of done*
> Table with a set of scenarios and description of behavior, including the
> expected one.
> [1] org.apache.ignite.internal.tx.impl.HeapLockManager
> [2] https://github.com/ascherbakoff/ai3-txn-mvp
> [3] https://dl.acm.org/doi/pdf/10.1145/320251.320260
> [4] https://web.stanford.edu/class/cs245/readings/granularity-of-locks.pdf
--
This message was sent by Atlassian Jira
(v8.20.10#820010)