Skip to main content
  • 2980 Accesses

Abstract

This chapter addresses the deadlock detection problem. After having introduced the AND deadlock model and the OR deadlock model, it presents distributed algorithms that detect their occurrence. Let us recall that the property “there is a deadlock” is a stable property (once deadlocked, a set of processes remain deadlocked until an external agent—the underlying system—resolves it). Hence, as seen in Sect. 6.5, algorithms computing global states of a computation can be used to detect deadlocks. Differently, the algorithms presented in this chapter are specific to deadlock detection. For simplicity, they all assume FIFO channels.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. G. Bracha, S. Toueg, Distributed deadlock detection. Distrib. Comput. 2(3), 127–138 (1987)

    Article  MATH  Google Scholar 

  2. J. Brzezinski, J.-M. Hélary, M. Raynal, M. Singhal, Deadlock models and a general algorithm for distributed deadlock detection. J. Parallel Distrib. Comput. 31(2), 112–125 (1995) (Erratum printed in Journal of Parallel and Distributed Computing, 32(2), 232 (1996))

    Article  Google Scholar 

  3. K.M. Chandy, J. Misra, Deadlock absence proof for networks of communicating processes. Inf. Process. Lett. 9(4), 185–189 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  4. K.M. Chandy, J. Misra, L.M. Haas, Distributed deadlock detection. ACM Trans. Comput. Syst. 1(2), 144–156 (1983)

    Article  Google Scholar 

  5. E.G. Coffman Jr., M.J. Elphick, A. Shoshani, System deadlocks. ACM Comput. Surv. 3(2), 67–78 (1971)

    Article  MATH  Google Scholar 

  6. E.W.D. Dijkstra, C.S. Scholten, Termination detection for diffusing computations. Inf. Process. Lett. 11(1), 1–4 (1980)

    Article  MathSciNet  MATH  Google Scholar 

  7. V.D. Gligor, S.H. Shattuck, Deadlock detection in distributed systems. IEEE Trans. Softw. Eng. SE-6(5), 435–440 (1980)

    Article  Google Scholar 

  8. D. Gray, A. Reuter, Transaction Processing: Concepts and Techniques (Morgan Kaufmann, San Mateo, 1993), 1060 pages. ISBN 1-55860-190-2

    MATH  Google Scholar 

  9. H.N. Haberman, Prevention of system deadlocks. Commun. ACM 12(7), 373–377 (1969)

    Article  Google Scholar 

  10. J.W. Havender, Avoiding deadlocks in multitasking systems. IBM Syst. J. 13(3), 168–192 (1971)

    Google Scholar 

  11. J.-M. Hélary, C. Jard, N. Plouzeau, M. Raynal, Detection of stable properties in distributed systems, in Proc. 6th ACM Symposium on Principles of Distributed Computing (PODC’87) (ACM Press, New York, 1987), pp. 125–136

    Google Scholar 

  12. R.C. Holt, Comments on prevention of system deadlocks. Commun. ACM 14(1), 36–38 (1871)

    Article  Google Scholar 

  13. P. Knapp, Deadlock detection in distributed databases. ACM Comput. Surv. 19(4), 303–328 (1987)

    Article  Google Scholar 

  14. A.D. Kshemkalyani, M. Singhal, Invariant-based verification of a distributed deadlock detection algorithm. IEEE Trans. Softw. Eng. 17(8), 789–799 (1991)

    Article  Google Scholar 

  15. A.D. Kshemkalyani, M. Singhal, Efficient detection and resolution of generalized distributed deadlocks. IEEE Trans. Softw. Eng. 20(1), 43–54 (1994)

    Article  Google Scholar 

  16. A.D. Kshemkalyani, M. Singhal, A one-phase algorithm to detect distributed deadlocks in replicated databases. IEEE Trans. Knowl. Data Eng. 11(6), 880–895 (1999)

    Article  Google Scholar 

  17. D. Manivannan, M. Singhal, An efficient distributed algorithm for detection of knots and cycles in a distributed graph. IEEE Trans. Parallel Distrib. Syst. 14(10), 961–972 (2003)

    Article  Google Scholar 

  18. D. Menasce, R. Muntz, Locking and deadlock detection in distributed database. IEEE Trans. Softw. Eng. SE-5(3), 195–202 (1979)

    Article  Google Scholar 

  19. J.R. Mendívil, F. Fariña, C.F. Garitagoitia, C.F. Alastruey, J.M. Barnabeu-Auban, A distributed deadlock resolution algorithm for the AND model. IEEE Trans. Parallel Distrib. Syst. 10(5), 433–447 (1999)

    Article  Google Scholar 

  20. J. Misra, K.M. Chandy, A distributed graph algorithm: knot detection. ACM Trans. Program. Lang. Syst. 4(4), 678–686 (1982)

    Article  MATH  Google Scholar 

  21. D.P. Mitchell, M. Merritt, A distributed algorithm for deadlock detection and resolution, in Proc. 3rd ACM Symposium on Principles of Distributed Computing (PODC’84) (ACM Press, New York, 1984), pp. 282–284

    Chapter  Google Scholar 

  22. N. Nararajan, A distributed scheme for detecting communication deadlocks. IEEE Trans. Softw. Eng. 12(4), 531–537 (1986)

    Article  Google Scholar 

  23. R. Obermarck, Distributed deadlock detection algorithm. ACM Trans. Database Syst. 7(2), 197–208 (1982)

    Article  Google Scholar 

  24. M. Raynal, Networks and Distributed Computation: Concepts, Tools and Algorithms (The MIT Press, Cambridge, 1987), 168 pages. ISBN 0-262-18130-4

    Google Scholar 

  25. D.J. Rosenkrantz, R.E. Stearns, P.M. Lewis, System level concurrency control in distributed databases. ACM Trans. Database Syst. 3(2), 178–198 (1978)

    Article  Google Scholar 

  26. M. Singhal, Deadlock detection in distributed systems. IEEE Comput. 22(11), 37–48 (1989)

    Article  Google Scholar 

  27. J. Villadangos, F. Fariña, J.R. Mendívil, C.F. Garitagoitia, A. Cordoba, A safe algorithm for resolving OR deadlocks. IEEE Trans. Softw. Eng. 29(7), 608–622 (2003)

    Article  Google Scholar 

  28. H. Wu, W.-N. Chin, J. Jaffar, An efficient distributed deadlock avoidance algorithm for the AND model. IEEE Trans. Softw. Eng. 28(1), 18–29 (2002)

    Article  Google Scholar 

  29. G.T.J. Wuu, A.J. Bernstein, False deadlock detection in distributed systems. IEEE Trans. Softw. Eng. SE-11(8), 820–821 (1985)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Raynal, M. (2013). Distributed Deadlock Detection. In: Distributed Algorithms for Message-Passing Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38123-2_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38123-2_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38122-5

  • Online ISBN: 978-3-642-38123-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics