Denis Chudov created IGNITE-18091:
-------------------------------------

             Summary: Compare deadlock prevention implementation and work out a 
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


*Motivation*
Today we have several possible implementations of deadlock prevention: AI 3 
[1], transactions POC [2], and 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)

Reply via email to