Deadlock resolution in wait-for graphs by vertex/arc deletion

  • Alan Diêgo Aurélio Carneiro
  • Fábio Protti
  • Uéverton S. Souza


A deadlock occurs in a distributed computation if a group of processes wait indefinitely for resources from each other. In this paper we study actions to be taken after deadlock detection, especially the action of searching for a small deadlock-resolution set. More precisely, given a “snapshot” graph G representing a deadlocked state of a distributed computation governed by a certain deadlock model \({\mathbb {M}}\), we investigate the complexity of vertex/arc deletion problems that aim at finding minimum vertex/arc subsets whose removal turns G into a deadlock-free graph (according to model \({\mathbb {M}}\)). Our contributions include polynomial-time algorithms and hardness proofs, for general graphs and for special graph classes. Among other results, we show that the arc deletion problem in the OR model can be solved in polynomial time, and the vertex deletion problem in the OR model remains NP-complete even for graphs with maximum degree \({\varDelta }(G) = 4\), but is solvable in \(O (m \sqrt{n})\) time for graphs with \({\varDelta }(G)\le 3\).


Deadlock resolution Knot Deadlock recovery Wait-for graphs Computational complexity Vertex deletion Directed feedback vertex set 


  1. Atreya R, Mittal N, Kshemkalyani AD, Garg VK, Singhal M (2007) Efficient detection of a locally stable predicate in a distributed system. J Parallel Distrib Comput 67(4):369–385CrossRefzbMATHGoogle Scholar
  2. Barbosa VC (1996) An introduction to distributed algorithms. The MIT Press, CambridgeGoogle Scholar
  3. Barbosa VC (2002) The combinatorics of resource sharing. In: Corrêa R, Dutra I, Fiallos M, Gomes F (eds) Models for parallel and distributed computation. Kluwer, Dordrecht, pp 27–52CrossRefGoogle Scholar
  4. Barbosa VC, Benevides MR (1998) A graph-theoretic characterization of AND-OR deadlocks. Tech. Rep. COPPE-ES-472/98, Federal University of Rio de Janeiro, Rio de Janeiro, BrazilGoogle Scholar
  5. Bokal D, Brešar B, Jerebic J (2012) A generalization of Hungarian method and Hall’s theorem with applications in wireless sensor networks. Discrete Appl Math 160(4):460–470MathSciNetCrossRefzbMATHGoogle Scholar
  6. Bondy JA, Murty USR (1976) Graph theory with applications. North-Holland, AmsterdamCrossRefzbMATHGoogle Scholar
  7. Bracha G, Toueg S (1987) Distributed deadlock detection. Distrib Comput 2:127–138CrossRefzbMATHGoogle Scholar
  8. Brzezinski J, Helary JM, Raynal M, Singhal M (1995) Deadlock models and a general algorithm for distributed deadlock detection. J Parallel Distrib Comput 31:112–125CrossRefGoogle Scholar
  9. Carneiro ADA, Protti F, Souza US (2017) Deletion graph problems based on deadlock resolution. In: Cao Y, Chen J (eds) Computing and combinatorics. COCOON 2017, Lecture Notes in Computer Science, vol 10392. Springer, pp 75–86Google Scholar
  10. Chahar P, Dalal S (2013) Deadlock resolution techniques: an overview. Int J Sci Res Publ 3(7):5pGoogle Scholar
  11. Chandy KM, Lamport L (1985) Distributed snapshots: determining global states of distributed systems. ACM Trans Comput Syst 3:63–75CrossRefGoogle Scholar
  12. Coffman EG, Elphick M, Shoshani A (1971) System deadlocks. ACM Comput Surv (CSUR) 3(2):67–78CrossRefzbMATHGoogle Scholar
  13. Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to algorithms. MIT Press, CambridgezbMATHGoogle Scholar
  14. de Mendívil JG, Fariña F, Garitagotia JR, Alastruey CF, Bernabeu-Auban JM (1999) A distributed deadlock resolution algorithm for the AND model. IEEE Trans Parallel Distrib Syst 10(5):433–447CrossRefGoogle Scholar
  15. Ding Y, He Y, Jiang J (2003) Multi-robot cooperation method based on the ant algorithm. In: IEEE swarm intelligence symposium, pp 14–18Google Scholar
  16. Galčík F, Katrenič J, Semanišin G (2011) On computing an optimal semi-matching. In: Kolman P, Kratochvíl J (eds) Graph-theoretic concepts in computer science, WG 2011, Lecture notes in computer science, vol 6986. Springer, Berlin, pp 250–261Google Scholar
  17. Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of NP-completeness. WH Freeman and Company, New YorkzbMATHGoogle Scholar
  18. Hopcroft JE, Karp RM (1973) An \(n^{5/2}\) algorithm for maximum matchings in bipartite graphs. SIAM J Comput 2(4):225–231MathSciNetCrossRefzbMATHGoogle Scholar
  19. Karp R (1972) Reducibility among combinatorial problems. In: Miller R, Thatcher J, Bohlinger J (eds) Complexity of computer computations. The IBM research symposia series. Springer, New York, pp 85–103CrossRefGoogle Scholar
  20. Katrenic J, Semanišin G (2011) A generalization of Hopcroft–Karp algorithm for semi-matchings and covers in bipartite graphs. arXiv:1103.1091
  21. Kshemkalyani AD, Singhal M (1994) Efficient detection and resolution of generalized distributed deadlocks. IEEE Trans Software Eng 20:43–54CrossRefGoogle Scholar
  22. Kshemkalyani AD, Singhal M (2011) Distributed computing: principles, algorithms, and systems. Cambridge University Press, CambridgezbMATHGoogle Scholar
  23. Leung JY-T, Lai EK (1979) On minimum cost recovery from system deadlock. IEEE Trans Comput 9(C–28):671–677MathSciNetCrossRefzbMATHGoogle Scholar
  24. Misra J, Chandy KM (1982) A distributed graph algorithm: Knot detection. ACM Trans Program Lang Syst 4:678–686CrossRefzbMATHGoogle Scholar
  25. Pachl J (1997) The deadlock problem in automatic railway operation. Signal und Draht 89(1–2):22–25Google Scholar
  26. Pachl J (2011) Deadlock avoidance in railroad operations simulations. In: Transportation research board 90th annual meeting (paper no. 11-0175)Google Scholar
  27. Penso LD, Protti F, Rautenbach D, dos Santos Souza U (2015) Complexity analysis of P\(_3\)-convexity problems on bounded-degree and planar graphs. Theoret Comput Sci 607:83–95MathSciNetCrossRefzbMATHGoogle Scholar
  28. Ryang DS, Park KH (1995) A two-level distributed detection algorithm of AND/OR deadlocks. J Parallel Distrib Comput 28:149–161CrossRefzbMATHGoogle Scholar
  29. Satyanarayana B, Prasad KS (2014) Discrete mathematics and graph theory. PHI Learning Pvt. Ltd, New DelhizbMATHGoogle Scholar
  30. Tanenbaum AS, Woodhull AS (1987) Operating systems: design and implementation, vol 2. Prentice-Hall, Englewood CliffsGoogle Scholar
  31. Terekhov I, Camp T (1999) Time efficient deadlock resolution algorithms. Inf Process Lett 69(3):149–154MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  • Alan Diêgo Aurélio Carneiro
    • 1
  • Fábio Protti
    • 1
  • Uéverton S. Souza
    • 1
  1. 1.Fluminense Federal UniversityNiteróiBrazil

Personalised recommendations