Deadlock-Freedom (and Safety) of Transactions in a Distributed Database

Abstract We analyze the problem of determining freedom from deadlock of transactions which control concurrency by locking in a distributed database. We use a graph-theoretic formalization of the problem and show that it is NP-hard even for two transactions. The problem of determining safety (serializability of all schedules) and deadlock freedom is also examined. We show that this problem can be solved in polynomial time for any fixed number of transactions.

[1]  Christos H. Papadimitriou,et al.  The complexity of distributed concurrency control , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[2]  Daniel J. Rosenkrantz,et al.  System level concurrency control for distributed database systems , 1978, TODS.

[3]  Mihalis Yannakakis,et al.  Locking policies: Safety and freedom from deadlock , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[4]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.

[5]  Peter J. Weinberger,et al.  Consistency, concurrency, and crash recovery , 1978, SIGMOD '78.

[6]  Derick Wood,et al.  Optimal Algorithms to Compute the Closure of a Set of Iso-Rectangles , 1984, J. Algorithms.

[7]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[8]  Christos H. Papadimitriou,et al.  Concurrency Control by Locking , 1983, SIAM J. Comput..

[9]  Mihalis Yannakakis,et al.  Freedom from Deadlock of Safe Locking Policies , 1982, SIAM J. Comput..

[10]  Abraham Silberschatz,et al.  Consistency in Hierarchical Database Systems , 1980, JACM.

[11]  Mihalis Yannakakis,et al.  A Theory of Safe Locking Policies in Database Systems , 1982, JACM.

[12]  Henry Tirri Freedom from deadlock of locked transactions in a distributed database , 1983, PODC '83.

[13]  Abraham Silberschatz,et al.  A Theory of Correct Locking Protocols for Database Systems , 1981, VLDB.

[14]  Christos H. Papadimitriou,et al.  A Fast Algorithm for Testing for Safety and Detecting Deadlocks in Locked Transaction Systems , 1981, J. Algorithms.

[15]  Christos H. Papadimitriou,et al.  Is distributed locking harder? , 1982, J. Comput. Syst. Sci..

[16]  Ouri Wolfson An Algorithm for Early Unlocking of Entities in Database Transactions , 1986, J. Algorithms.

[17]  Christos H. Papadimitriou,et al.  The serializability of concurrent database updates , 1979, JACM.

[18]  Jeffrey D. Ullman,et al.  Principles of Database Systems , 1980 .

[19]  Philip A. Bernstein,et al.  Concurrency Control in Distributed Database Systems , 1986, CSUR.