A distributed deadlock detection and resolution algorithm based on a hybrid wait-for graph and probe generation scheme

We present a continuous deadlock detection and resolution algorithm in distributed database systems. Our algorithm maintains an augmented transaction wait-for graph at each site and uses a modified priority-based probe generation scheme in order to detect local deadlocks without transmitting any intra-site deadlock detection messages, to minimize the number of inter-site messages sent for detection of global deadlocks and also for the early detection of global deadlocks that might occur in the future without transmitting detection messages repeatedly. The augmented transaction wait-for graph contains, in addition to lock-wait information, information about message-wait relationships among agents of a transaction, probes received from other sites and transitive wait-for relationships among transactions. Global deadlocks are declared whenever a transitive wait-for relationship from an agent of a global transaction is constructed for some agent of the transaction.

[1]  K. Mani Chandy,et al.  A distributed algorithm for detecting resource deadlocks in distributed systems , 1982, PODC '82.

[2]  W. Richard Stevens,et al.  Unix network programming , 1990, CCRV.

[3]  Michael Stonebraker,et al.  Concurrency Control and Consistency of Multiple Copies of Data in Distributed Ingres , 1979, IEEE Transactions on Software Engineering.

[4]  Walter A. Burkhard,et al.  Resolution of Deadlocks in Object-Oriented Distributed Systems , 1989, IEEE Trans. Computers.

[5]  Mukesh Singhal,et al.  Deadlock detection in distributed systems , 1989, Computer.

[6]  Peter Scheuermann,et al.  A deadlock detection and resolution algorithm for sequential transaction processing with multiple lock modes , 1991, [1991] Proceedings The Fifteenth Annual International Computer Software & Applications Conference.

[7]  Amit P. Sheth,et al.  Deadlock detection algorithms in distributed database systems , 1986, 1986 IEEE Second International Conference on Data Engineering.

[8]  Sang Ho Lee,et al.  A periodic deadlock detection and resolution algorithm with a new graph model for sequential transaction processing , 1992, [1992] Eighth International Conference on Data Engineering.

[9]  Alok N. Choudhary Cost of distributed deadlock detection: a performance study , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[10]  Donald F. Towsley,et al.  A Modified Priority Based Probe Algorithm for Distributed Deadlock Detection and Resolution , 1989, IEEE Trans. Software Eng..

[11]  Don P. Mitchell,et al.  A distributed algorithm for deadlock detection and resolution , 1984, PODC '84.

[12]  Laura M. Haas,et al.  Computation and communication in R*: a distributed database manager , 1984, TOCS.

[13]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[14]  Ron Obermarck,et al.  Distributed deadlock detection algorithm , 1982, TODS.

[15]  Michael J. Carey,et al.  The Performance of Alternative Strategies for Dealing with Deadlocks in Database Management Systems , 1987, IEEE Transactions on Software Engineering.

[16]  C. V. Ramamoorthy,et al.  Protocols for Deadlock Detection in Distributed Database Systems , 1982, IEEE Transactions on Software Engineering.

[17]  Walter A. Burkhard,et al.  Semantic lock models in object-oriented distributed systems and deadlock resolution , 1988, SIGMOD '88.

[18]  Daniel A. Menascé,et al.  Locking and Deadlock Detection in Distributed Data Bases , 1979, IEEE Transactions on Software Engineering.

[19]  Mukul K. Sinha,et al.  A Priority Based Distributed Deadlock Detection Algorithm , 1985, IEEE Transactions on Software Engineering.

[20]  Walter A. Burkhard,et al.  Deadlock Resolution and Semantic Lock Models in Object-Oriented Distributed Systems. , 1988, SIGMOD 1988.