Skip to main content

Application Recovery

  • Living reference work entry
  • First Online:
  • 70 Accesses

Synonyms

Exactly-once execution; Fault-tolerant applications; Persistent applications; Recovery guarantees; Transaction processing

Definition

Systems implement application recovery to enable applications to survive system crashes and provide “exactly-once execution” in which the result of executing the application is equivalent to a single execution where no system crashes or failures occur.

Historical Background

Application recovery was first commercially provided by IBM’s CICS (Customer Information Control System). Generically, these kinds of systems became known as transaction processing monitors (TP monitors) [5, 9]. With a TP monitor, applications are decomposed into a series of steps. Each step is executed within a transaction. A step typically consists of reading input state from a database or transactional queue, executing some business logic, perhaps processing user input or reading and writing to a database, and, finally, writing state for the next step into database or...

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

Recommended Reading

  1. Barga R, Chen S, Lomet D. Improving logging and recovery performance in phoenix/App. In: Proceeding of 20th International Conference on Data Engineering, 2004.

    Google Scholar 

  2. Barga R, Lomet D, Shegalov G, Weikum G. Recovery guarantees for internet applications. ACM Trans Internet Technol. 2004;4(3):289–328.

    Article  Google Scholar 

  3. Berkeley/Stanford Recovery-Oriented Computing (ROC) Project. http://roc.cs.berkeley.edu. 10 Oct 2008.

  4. Bernstein P, Hsu M, Mann B. Implementing recoverable requests using queues. In: Proceeding ACM SIGMOD International Conference on Management of Data; 1990. p. 112–22.

    Google Scholar 

  5. Bernstein P, Newcomer E. Principles of transaction processing. Morgan Kaufmann; 1997.

    Google Scholar 

  6. Borg A, Baumbach J, Glazer S. A message system supporting fault tolerance. In: Proceeding 9th ACM Symposium on Operating System Principles; 1983. p. 90–9.

    Google Scholar 

  7. Elnozahy EN, Alvisi L, Wang Y, Johnson DB. A survey of rollback-recovery protocols in message-passing systems. ACM Comput Surv. 2002;34(3):375–408.

    Article  Google Scholar 

  8. Frølund S, Guerraoui R. 2000. A pragmatic implementation of e-Transactions. In: Proceeding 19th Symposium on Reliable Distributed Systems; 2000. p. 186–95.

    Google Scholar 

  9. Gray J, Reuter A. Transaction processing: concepts and techniques. San Mateo: Morgan Kaufmann; 1993.

    MATH  Google Scholar 

  10. Lomet D. Persistent middle tier components without logging. In: Proceeding International Conference on Database Engineering and Applications; 2005. p. 37–46.

    Google Scholar 

  11. Narasimhan P, Moser L, Melliar-Smith PM. Lessons learned in building a fault-tolerant CORBA System. DSN; 2002. p. 39–44.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to David Lomet .

Editor information

Editors and Affiliations

Section Editor information

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer Science+Business Media New York

About this entry

Cite this entry

Lomet, D. (2016). Application Recovery. In: Liu, L., Özsu, M. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4899-7993-3_20-2

Download citation

  • DOI: https://doi.org/10.1007/978-1-4899-7993-3_20-2

  • Received:

  • Accepted:

  • Published:

  • Publisher Name: Springer, New York, NY

  • Online ISBN: 978-1-4899-7993-3

  • eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering

Publish with us

Policies and ethics