Skip to main content

Detecting diamond necklaces in labeled dags

A problem from distributed debugging

  • Conference paper
  • First Online:
  • 153 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1197))

Abstract

The problem tackled in this paper originates from the debugging of distributed applications. Execution of such an application can be modeled as a partially ordered set of process states. The debugging of control flows (sequences of process states) of these executions is based on the satisfaction of predicates by process states. A process state that satisfies a predicate inherits its label. It follows that, in this context, a distributed execution is a labeled directed acyclic graph (dag for short). Debug or determine if control flows of a distributed execution satisfy some property amounts to test if the labeled dag includes some pattern defined on predicate labels.

This paper first introduces a general pattern (called diamond necklace) which includes classical patterns encountered in distributed debugging. Then an efficient polynomial time algorithm detecting such patterns in a labeled dag is presented. To be easily adapted to an on-the-fly detection of the pattern in distributed executions, the algorithm visits the nodes of the graph according to a topological sort strategy.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Babaoğlu, E. Fromentin, and M. Raynal: “A Unified Framework for the Specification and Run-time Detection of Dynamic Properties in Distributed Computations”, The Journal of Systems and Software, special issue on Software Engineering for Distributed Computing, 33:(3), pp. 287–298, 1996.

    Google Scholar 

  2. L. Bougé, and N. Francez: “A compositional approach to superimposition”, In Proc. of the 15 th ACM SIGACT-SIGPLAN Symposium on Principle of Programming Languages, pp. 240–249, San Diego, California, January 1988.

    Google Scholar 

  3. R. Cooper, and K. Marzullo: “Consistent Detection of Global Predicates”, In Proc. of the ACM/ONR Workshop on Parallel and Distributed Debugging, pp. 163–173, Santa Cruz, California, May 1991.

    Google Scholar 

  4. E. Fromentin, C. Jard, G. Jourdan, and M. Raynal: “On-the-fly Analysis of Distributed Computations”, Information Processing Letters 54, pp. 267–274, 1995.

    Google Scholar 

  5. E. Fromentin, M. Raynal, V.K. Garg, and A.I. Tomlinson: “On the fly testing of regular patterns in distributed computations”, In Proc. of the the 23 rd International Conference on Parallel Processing, pp. 73–76, St. Charles, IL, August 1994.

    Google Scholar 

  6. V.K. Garg, A.I. Tomlinson, E. Fromentin, and M. Raynal: “Expressing and Detecting General Control Flow Properties of Distributed Computations”, In Proc. of the 7th IEEE Symposium on Parallel and Distributed Processing, pp. 432–438, San-Antonio (USA), October 1995.

    Google Scholar 

  7. V.K. Garg and B. Waldecker: “Detection of Unstable Predicates in Distributed Programs”, In Proc. of the 12th International Conference on Foundations of Software Technology and Theoretical Computer Science, Springer Verlag, LNCS 652, pp. 253–264, New Delhi, India, December 1992.

    Google Scholar 

  8. M. A. Harrison: “Introduction to Formal Language Theory”, Addison-Wesley series in computer science, 1978.

    Google Scholar 

  9. M. Hurfin, N. Plouzeau, and M. Raynal: “A Debugging Tool for Estelle Distributed Programs”, Journal of Computer Communications, 28(5), pp. 328–333, May 1993.

    Google Scholar 

  10. M. Hurfin, N. Plouzeau, and M. Raynal: “Detecting atomic sequences of predicates in distributed computations”, In Proc. ACM workshop on Parallel and Distributed Debugging, pp. 32–42, San Diego, May 1993. (Reprinted in SIGPLAN Notices, Dec. 1993).

    Google Scholar 

  11. J.E. Hopcroft and J.D. Ullman: “Introduction to Automata Theory, Languages, and Computation”, Addison-Weslay Publishing Company, 418 pages, 1979.

    Google Scholar 

  12. L. Lamport: “Time, clocks and the ordering of events in a distributed system”, Communications of the ACM, 21(7), pp. 558–565, July 1978.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Fabrizio d'Amore Paolo Giulio Franciosa Alberto Marchetti-Spaccamela

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hurfin, M., Raynal, M. (1997). Detecting diamond necklaces in labeled dags. In: d'Amore, F., Franciosa, P.G., Marchetti-Spaccamela, A. (eds) Graph-Theoretic Concepts in Computer Science. WG 1996. Lecture Notes in Computer Science, vol 1197. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62559-3_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-62559-3_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-62559-9

  • Online ISBN: 978-3-540-68072-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics