Skip to main content

Distributed Exception Handling: Ideas, Lessons and Issues with Recent Exception Handling Systems

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3475))

Abstract

Exception handling is an important feature of the tool-set that enables the building of fault-tolerant concurrent and distributed programs. While transactional distributed systems have been studied for a long time, distributed exception handling techniques are only now evolving towards maturity, especially within asynchronous multi agents or component based systems. In this paper, we review two recent proposals for distributed exceptions handling systems (DEHS), namely SaGE and Guardian, in the light of what the Erlang programming language brings to the table : native constructs for concurrency, distributedness and exception handling across processes. We expand on the merits and possible drawbacks of these systems. We advocate the need to introduce the notion of resumption, an often downplayed feature of EHSs, to modern day DEHS, in order to address the problem of multi agent systems facing the “real world”.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Weinreb, D.L.: Signalling and handling conditions. Technical report, Symbolics, Inc., Cambridge, MA (1983)

    Google Scholar 

  2. Koenig, A.R., Stroustrup, B.: Exception handling for C++. In: Proceedings C++ at Work Conference (1989)

    Google Scholar 

  3. Pitman, K.: Exceptional situations in lisp. In: EUROPAL 1990 (1990)

    Google Scholar 

  4. Dony, C.: A fully object-oriented exception handling system: Rationale and smalltalk implementation. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.R. (eds.) ECOOP-WS 2000. LNCS, vol. 2022, p. 18. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  5. Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.: Advances in Exception Handling Techniques. LNCS, vol. 2022. Springer, Heidelberg (2001)

    Book  MATH  Google Scholar 

  6. Armstrong, J.: Making Reliable Distributed Systems in the presence of Software Errors. PhD thesis (2003)

    Google Scholar 

  7. Conchon, S., Le Fessant, F.: Jocaml: mobile agents for objective caml (1999)

    Google Scholar 

  8. Peter Van Roy, S.H.: Mozart, a programming system for agents applications (1999)

    Google Scholar 

  9. Souchon, F., Dony, C., Urtado, C., Vauttier, S.: A proposition for exception handling in multi-agent systems. In: Lucena, C., Garcia, A., Romanovsky, A., Castro, J., Alencar, P.S.C. (eds.) SELMAS 2003. LNCS, vol. 2940. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  10. Souchon, F., Vauttier, S., Dony, C., Vrtado, C.: Fiabilité des applications multi-agents: le systéme de gestion d’exception sage (2004)

    Google Scholar 

  11. Tripathi, A., Miller, R.: Exception handling in agent-oriented systems. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.R. (eds.) ECOOP-WS 2000. LNCS, vol. 2022, p. 128. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  12. Miller, R., Tripathi, A.: Primitives and mechanisms of the guardian model for exception handling in distributed systems. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol. 2743. Springer, Heidelberg (2003)

    Google Scholar 

  13. Miller, R.: The Guardian Model for Exception Handling in Distributed Systems. PhD thesis (2003)

    Google Scholar 

  14. Ferber, J.: Multi-Agent Systems: An Introduction to Distributed Artificial Intelligence, 1st edn., Addison-Wesley Pub. Co., Reading (1999)

    Google Scholar 

  15. Goodenough, J.B.: Exception handling: Issues and a proposed notation. Communications of the ACM 18, 683–696 (1975)

    Article  MATH  MathSciNet  Google Scholar 

  16. Ichbiah, J., Barnes, J.G.P., Heliard, J.-C., Krieg-Brueckner, B., Roubine, O., Wichmann, B.A.: Rationale for the design of the ada programming language. ACM Sigplan Notices 14(6B) (1979)

    Google Scholar 

  17. Sun Microsystems Mountain View, Calif.: Java 2 Platform, Standard Edition, J2SE (2004), http://java.sun.com/j2se

  18. Jones, S.P.: Tackling the awkward squad: monadic input/output, concurrency, exceptions and foreign-language calls in haskell (2002)

    Google Scholar 

  19. Pitman, K.: Condition handling in the lisp language family. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.R. (eds.) ECOOP-WS 2000. LNCS, vol. 2022, p. 39. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  20. Dony, C.: Exception handling and object-oriented programming: towards a synthesis. ACM SIGPLAN Notices 25, 322–330 (1990); In: Meyrowitz, N. (ed.) OOPSLA/ECOOP 1990 Proceedings (1990)

    Google Scholar 

  21. Romanovsky, A.B., Kienzle, J.: Action-oriented exception handling in cooperative and competitive concurrent object-oriented systems. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.R. (eds.) ECOOP-WS 2000. LNCS, vol. 2022, pp. 147–164. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  22. Romanovsky, A.B.: Conversations of objects. Computer Languages 21, 147–163 (1995)

    Article  Google Scholar 

  23. Wu, Z., Randell, B., Romanovsky, A., Rubira, C., Stroud, R., Xu, J.: From recovery blocks to concurrent atomic actions. In: Predictably Dependable Computing Systems. ESPRIT Basic Research Series, pp. 87–101 (1995)

    Google Scholar 

  24. Romanovsky, A., Kienzle, J.: Action-oriented exception handling in cooperative and competitive object-oriented systems. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A.R. (eds.) ECOOP-WS 2000. LNCS, vol. 2022, p. 147. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  25. Liskov, B.: Distributed programming in argus. Communications of the ACM 31(3), 300–312 (1988)

    Article  MathSciNet  Google Scholar 

  26. Jacques Ferber, O.G.: Madkit: Organizing heterogeneity with groups in a platform for multiple multi-agent systems (1997)

    Google Scholar 

  27. Java open application server (JOnAS) 4.1: A J2EE platform (2004), http://www.objectweb.org/jonas/current/doc/JOnASWP.html

  28. Halstead, R., Loaiza, J.: Exception handling in multilisp. In: 1985 Int’l. Conf. on Parallel Processing, pp. 822–830 (1985)

    Google Scholar 

  29. Issarny, V.: Concurrent exception handling. In: Advances in Exception Handling Techniques (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Campéas, A., Dony, C., Urtado, C., Vauttier, S. (2005). Distributed Exception Handling: Ideas, Lessons and Issues with Recent Exception Handling Systems. In: Guelfi, N. (eds) Rapid Integration of Software Engineering Techniques. RISE 2004. Lecture Notes in Computer Science, vol 3475. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11423331_8

Download citation

  • DOI: https://doi.org/10.1007/11423331_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-25812-4

  • Online ISBN: 978-3-540-32039-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics