skip to main content
research-article

Recovery within long-running transactions

Published:03 July 2013Publication History
Skip Abstract Section

Abstract

As computer systems continue to grow in complexity, the possibility of failure increases. At the same time, the increase in computer system pervasiveness in day-to-day activities bring along increased expectations on their reliability. This has led to the need for effective and automatic error-recovery techniques to resolve failures. Transactions enable the handling of failure propagation over concurrent systems due to dependencies, restoring the system to the point before the failure occurred. However, in various settings, especially when interacting with the real world, reversal is not possible. The notion of compensations has been long advocated as a way of addressing this issue, through the specification of activities which can be executed to undo partial transactions. Still, there is no accepted standard theory; the literature offers a plethora of distinct formalisms and approaches.

In this survey, we review the compensations from a theoretical point of view by (i) giving a historic account of the evolution of compensating transactions; (ii) delineating and describing a number of design options involved; (iii) presenting a number of formalisms found in the literature, exposing similarities and differences; (iv) comparing formal notions of compensation correctness; (v) giving insights regarding the application of compensations in practice; and (vi) discussing current and future research trends in the area.

References

  1. Abouzaid, F. and Mullins, J. 2008. A calculus for generation, verification and refinement of BPEL specifications. Electron. Notes Theoret. Comput. Sci. 200, 3, 43--65. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Acu, B. and Reisig, W. 2006. Compensation in workflow nets. In Proceedings of the Petri Nets and Other Models of Concurrency (ICATPN). Lecture Notes in Computer Science, vol. 4024, Springer, 65--83. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Alur, R. and Dill, D. L. 1994. A theory of timed automata. Theoret. Comput. Sci. 126, 2, 183--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Alur, R., Kannan, S., and Yannakakis, M. 1999. Communicating hierarchical state machines. In Proceedings of the International Colloquium on Automata, Languages and Programming (ICAL). Lecture Notes in Computer Science, vol. 1644, Springer, 169--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte, S., Trickovic, I., and Weerawarana, S. 2003. Business process execution language for web services v1.1. http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-bpel/ws-bpel.pdf (Last accessed 2/10).Google ScholarGoogle Scholar
  6. Arias-Fisteus, J., Fernández, L. S., and Kloos, C. D. 2004. Formal verification of BPEL4WS business collaborations. In Proceedings of the E-Commerce and Web Technologies (EC-Web). Lecture Notes in Computer Science, vol. 3182, Springer, 76--85.Google ScholarGoogle ScholarCross RefCross Ref
  7. Arkin, A., Askary, S., Bloch, B., Curbera, F., Goland, Y., Kartha, N., Liu, C. K., Thatte, S., Yendluri, P., and Yiu, A. 2007. Web services business process execution language version 2.0. OASIS Standard. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf (Last accessed: 2/10).Google ScholarGoogle Scholar
  8. Baldoni, M., Baroglio, C., Martelli, A., Patti, V., and Schifanella, C. 2005. Verifying the conformance of web services to global interaction protocols: A first step. In European Performance Engineering Workshop (EPEW)/Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 3670, Springer, 257--271. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Bernier, Y. 2001. Latency compensating methods in client/server in-game protocol design and optimization. In Preceedings of the Game Developers Conference.Google ScholarGoogle Scholar
  10. Bocchi, L., Laneve, C., and Zavattaro, G. 2003. A calculus for long-running transactions. In Proceedings of the Formal Methods for Open Object-Based Distributed Systems (FMOODS). Lecture Notes in Computer Science, vol. 2884, Springer, 124--138.Google ScholarGoogle ScholarCross RefCross Ref
  11. Bolie, J., Cardella, M., Blanvalet, S., Juric, M., Chandran, S. C. P., Coene, Y., and Geminiuc, K. 2006. BPEL Cookbook: Best Practices for SOA-based integration and composite applications development: Ten practical real-world case studies combining business process management and web services orchestration. Packt Publishing, Birmingham, U.K. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Bruni, R., Butler, M. J., Ferreira, C., Hoare, C. A. R., Melgratti, H. C., and Montanari, U. 2005. Comparing two approaches to compensable flow composition. In Proceedings of the Concurrency Theory (CONCUR). Lecture Notes in Computer Science, vol. 3653, Springer, 383--397. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Bruni, R., Melgratti, H., and Montanari, U. 2005. Theoretical foundations for compensations in flow composition languages. In Preceedings of the ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL). ACM, 209--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Bruni, R., Melgratti, H. C., and Montanari, U. 2004. Nested commits for mobile calculi: Extending join. In Proceedings of the IFIP International Conference on Theoretical Computer Science. Kluwer, 563--576.Google ScholarGoogle Scholar
  15. Butler, M. J. and Ferreira, C. 2000. A process compensation language. In Proceedings of the Integrated Formal Methods. Lecture Notes in Computer Science, vol. 1945, Springer, 61--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Butler, M. J. and Ferreira, C. 2004. An operational semantics for stac, a language for modelling long-running business transactions. In Proceedings of the Coordination Models and Languages (COORDINATION). Lecture Notes in Computer Science, vol. 2949, Springer, 87--104.Google ScholarGoogle ScholarCross RefCross Ref
  17. Butler, M. J., Ferreira, C., and Ng, M. Y. 2005. Precise modelling of compensating business transactions and its application to BPEL. J. Univ. Comput. Sci. 11, 5, 712--743.Google ScholarGoogle Scholar
  18. Butler, M. J., Hoare, C. A. R., and Ferreira, C. 2004. A trace semantics for long-running transactions. In 25 Years Communicating Sequential Processes. Lecture Notes in Computer Science, vol. 3525, Springer, 133--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Butler, M. J. and Ripon, S. 2005. Executable semantics for compensating CSP. In Proceedings of the European Performance Engineering Workshop (EPEW)/Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 3670, Springer, 243--256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Caires, L., Ferreira, C., and Vieira, H. T. 2008. A process calculus analysis of compensations. In Proceedings of the Trustworthy Global Computing (TGC). Lecture Notes in Computer Science, vol. 5474, Springer, 87--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Chessell, M., Griffin, C., Vines, D., Butler, M., Ferreira, C., and Henderson, P. 2002. Extending the concept of transaction compensation. IBM Syst. J. 41, 4, 743--758. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Coleman, J. W. 2004. Features of BPEL modelled via structural operational semantics. M.S. thesis, University of Newcastle. MPhil Thesis.Google ScholarGoogle Scholar
  23. Colombo, C. and Pace, G. J. 2011. A compensating transaction example in twelve notations. Tech. rep., Department of Computer Science, University of Malta. Tech. rep. CS2011-01.Google ScholarGoogle Scholar
  24. Colombo, C., Pace, G. J., and Abela, P. 2010. Compensation-aware runtime monitoring. In Proceedings of the Runtime Verification (RV). Lecture Notes in Computer Science, vol. 6418, Springer, 214--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Danos, V. and Krivine, J. 2005. Transactions in RCCS. In Proceedings of the Concurrency Theory (CONCUR). Lecture Notes in Computer Science, vol. 3653, Springer, 398--412. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Davies, Jr., C. T. 1973. Recovery semantics for a DB/DC system. In Proceedings of the ACM Annual Conference. ACM, 136--141. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. De Vries, E., Koutavas, V., and Hennessy, M. 2010a. Communicating transactions. In Proceedings of the Concurrency Theory (CONCUR). Lecture Notes in Computer Science, vol. 6269, Springer, 569--583. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. De Vries, E., Koutavas, V., and Hennessy, M. 2010b. Liveness of communicating transactions. In Proceedings of the Asian Conference on Programming Languages and Systems (APLAS). Lecture Notes in Computer Science, vol. 6461, Springer, 392--407. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Eisentraut, C. and Spieler, D. 2008. Fault, compensation and termination in WS-BPEL 2.0 - a comparative analysis. In Proceedings of the Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 5387, Springer, 107--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Eswaran, K. P., Gray, J. N., Lorie, R. A., and Traiger, I. L. 1976. The notions of consistency and predicate locks in a database system. Commun. ACM 19, 624--633. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Fahland, D. 2005. Complete abstract operational semantics for the web service business process execution language. Informatik-Berichte 190, Humboldt-Universität zu Berlin.Google ScholarGoogle Scholar
  32. Fahland, D. and Reisig, W. 2005. ASM-based semantics for BPEL: The negative control flow. In Proceedings of the 12th International Workshop on Abstract State Machines (ASM). 131--152.Google ScholarGoogle Scholar
  33. Farahbod, R. 2004. Extending and refining an abstract operational semantics of the web services architecture for the business process execution language. M.S. thesis, School of Computing Science, Simon Fraser University, British Colombia, Canada.Google ScholarGoogle Scholar
  34. Farahbod, R., Glässer, U., and Vajihollahi, M. 2005. A formal semantics for the business process execution language for web services. In Proceedings of the Web Services and Model-Driven Enterprise Information Services (WSMDEIS). INSTICC Press, 122--133.Google ScholarGoogle Scholar
  35. Ferrara, A. 2004a. Web services: A process algebra approach. In Proceedings of the International Conference on Service-Oriented Computing (ICSOC). ACM, 242--251. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Ferrara, A. 2004b. Web services: A process algebra approach. Tech. rep., Università di Roma “La Sapienza”.Google ScholarGoogle Scholar
  37. Field, J. and Varela, C. A. 2005. Transactors: A programming model for maintaining globally consistent distributed state in unreliable environments. SIGPLAN Notes 40, 195--208. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Fischer, J. and Majumdar, R. 2007. Ensuring consistency in long running transactions. In Proceedings of the Conference on Automated Software Engineering (ASE). ACM, 54--63. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Foster, H. 2006. A rigorous approach to engineering web service compositions. Ph.D. dissutation, University Of London.Google ScholarGoogle Scholar
  40. Foster, H., Uchitel, S., Magee, J., and Kramer, J. 2006. LTSA-WS: A tool for model-based verification of web service compositions and choreography. In Proceedings of the International Conference on Software Engineering (ICSE). ACM, 771--774. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Fournet, C. and Gonthier, G. 1996. The reflexive CHAM and the join-calculus. In Proceedings of the ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL). ACM, 372--385. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Fu, X., Bultan, T., and Su, J. 2004. Analysis of interacting BPEL web services. In Proceedings of the 13th Conference on the World Wide Web (WWW). ACM, 621--630. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Garcia-Molina, H. and Salem, K. 1987. Sagas. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, 249--259. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Gray, J. 1981. The transaction concept: Virtues and limitations (invited paper). In Proceedings of the 7th International Conference on Very Large Data Bases (VLDB). IEEE, 144--154. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Greenfield, P., Fekete, A., Jang, J., and Kuo, D. 2003. Compensation is not enough. In Proceedings of the Enterprise Distributed Object Computing Conference (EDOC). IEEE, 232--239. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Guidi, C., Lanese, I., Montesi, F., and Zavattaro, G. 2008. On the interplay between fault handling and request-response service invocations. In Proceedings of the International Conference on Application of Concurrency to System Design (ACSD). IEEE, 190--198.Google ScholarGoogle Scholar
  47. Guidi, C., Lucchi, R., Gorrieri, R., Busi, N., and Zavattaro, G. 2006. SOCK: A calculus for service oriented computing. In Proceedings of the International Conference on Service-Oriented Computing (ICSOC). Lecture Notes in Computer Science, vol. 4294, Springer, 327--338. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Haddad, S., Melliti, T., Moreaux, P., and Rampacek, S. 2004. Modelling web services interoperability. In Proceedings of the International Conference on Enterprise Information Systems (ICEIS). 287--295.Google ScholarGoogle Scholar
  49. Haddad, S., Moreaux, P., and Rampacek, S. 2008. A formal semantics and a client synthesis for a bpel service. In Proceedings of the International Conference on Enterprise Information Systems (ICEIS). Lecture Notes in Business Information Processing, vol. 3, Springer, 388--401.Google ScholarGoogle ScholarCross RefCross Ref
  50. Hamadi, R. and Benatallah, B. 2003. A petri net-based model for web service composition. In Proceedings of the Australasian Database Conference (ADC). Australian Computer Society, Inc., 191--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. He, Y., Zhao, L., Wu, Z., and Li, F. 2008. Formal modeling of transaction behavior in WS-BPEL. In Proceedings of the International Conference on Computer Science and Software Engineering (CSSE). IEEE, 490--494. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Hennessy, M. 2007. A Distributed Pi-Calculus. Cambridge University Press, Cambridge, U.K. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Hoare, T. 1985. Communicating Sequential Processes. Prentice-Hall, Upper Saddle River, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Hoare, T., Hayes, I. J., Jifeng, H., Morgan, C. C., Roscoe, A. W., Sanders, J. W., Sorensen, I. H., Spivey, J. M., and Sufrin, B. A. 1987. Laws of programming. Commun. ACM 30, 8, 672--686. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Jifeng, H. 2007. Compensable programs. In Formal Methods and Hybrid Real-Time Systems. Lecture Notes in Computer Science, vol. 4700, Springer, 349--363. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Kazhamiakin, R. and Pistore, M. 2005. A parametric communication model for the verification of bpel4ws compositions. In European Performance Engineering Workshop (EPEW)/Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 3670, Springer, 318--332. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Kopp, O., Mietzner, R., and Leymann, F. 2009. The influence of an external transaction on a bpel scope. In Proceedings of the OTM Confederated International Conferences. On the Move to Meaningful Internet Systems: CoopIS, DOA, ODBASE, GADA, and IS. Springer, 381--388. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Korth, H. F., Levy, E., and Silberschatz, A. 1990. A formal approach to recovery by compensating transactions. In Proceedings of the International Conference on Very Large Data Bases (VLDB). Morgan Kaufmann, 95--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Koshkina, M. and van Breugel, F. 2004. Modelling and verifying web service orchestration by means of the concurrency workbench. ACM Softw. Eng. Notes 29, 5, 1--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Lanese, I., Vaz, C., and Ferreira, C. 2010. On the expressive power of primitives for compensation handling. In Proceedings of the Programming Languages and Systems (ESOP). Lecture Notes in Computer Science, vol. 6012, Springer, 366--386. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Lanese, I. and Zavattaro, G. 2009. Programming sagas in SOCK. In Proceedings of the International Conference on Software Engineering and Formal Methods (SEFM). IEEE, 189--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Laneve, C. and Zavattaro, G. 2005. Foundations of web transactions. In Foundations of Software Science and Computation Structures (FoSSaCS). Lecture Notes in Computer Science, vol. 3441, Springer, 282--298. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Lanotte, R., Maggiolo-Schettini, A., Milazzo, P., and Troina, A. 2006. Modeling long-running transactions with communicating hierarchical timed automata. In Formal Methods for Open Object-Based Distributed Systems (FMOODS). Lecture Notes in Computer Science, vol. 4037, Springer, 108--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Lanotte, R., Maggiolo-Schettini, A., Milazzo, P., and Troina, A. 2008. Design and verification of long-running transactions in a timed framework. Sci. Comput. Program. 73, 76--94. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Lapadula, A., Pugliese, R., and Tiezzi, F. 2007a. C-clock-ws: A timed service-oriented calculus. In Proceedings of the Theoretical Aspects of Computing (ICTAC). Lectur Notes in Computer Science, vol. 4711, Springer, 275--290. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Lapadula, A., Pugliese, R., and Tiezzi, F. 2007b. A calculus for orchestration of web services. In Proceedings of the Programming Languages and Systems (ESOP). Lecture Notes in Computer Science, vol. 4421, Springer, 33--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Lapadula, A., Pugliese, R., and Tiezzi, F. 2008a. A calculus for orchestration of web services. Tech. rep., Dipartimento di Sistemi e Informatica, Università di Firenze. http://rap.dsi.unifi.it/cows.Google ScholarGoogle Scholar
  68. Lapadula, A., Pugliese, R., and Tiezzi, F. 2008b. A formal account of WS-BPEL. In Proceedings of the Coordination Models and Languages (COORDINATION). Lecture Notes in Computer Science, vol. 5052, Springer, 199--215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Leymann, F. 2001. WSFL—web services flow language. IBM Software Group.Google ScholarGoogle Scholar
  70. Li, J., Zhu, H., and He, J. 2007a. Algebraic semantics for compensable transactions. In Proceedings of the Theoretical Aspects of Computing (ICTAC). Lecture Notes in Computer Science, vol. 4711, Springer, 306--321. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Li, J., Zhu, H., and He, J. 2008. Specifying and verifying web transactions. In Proceedings of the Formal Techniques for Networked and Distributed Systems (FORTE). Lecture Notes in Computer Science, vol. 5048, Springer, 149--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. Li, J., Zhu, H., Pu, G., and He, J. 2007b. Looking into compensable transactions. In Proceedings of the Annual IEEE/NASA Software Engineering Workshop. 154--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  73. Lohmann, N. 2007. A feature-complete petri net semantics for WS-BPEL 2.0. In Proceedings of the Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 4937, Springer, 77--91. Google ScholarGoogle ScholarDigital LibraryDigital Library
  74. Lucchi, R. and Mazzara, M. 2007. A pi-calculus based semantics for WS-BPEL. J. Logic Algebraic Program. 70, 1, 96--118.Google ScholarGoogle ScholarCross RefCross Ref
  75. Mateescu, R. and Rampacek, S. 2008. Formal modeling and discrete-time analysis of BPEL web services. In Proceedings of the Advances in Enterprise Engineering I. Lecture Notes in Business Information Processing, vol. 10, Springer, 179--193.Google ScholarGoogle ScholarCross RefCross Ref
  76. Mauve, M., Vogel, J., Hilt, V., and Effelsberg, W. 2004. Local-lag and timewarp: Providing consistency for replicated continuous applications. IEEE Trans. Multimedia 6, 1, 47--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. Mazzara, M. and Govoni, S. 2005. A case study of web services orchestration. In Coordination Models and Languages (COORDINATION). Lecture Notes in Computer Science, vol. 3454, Springer, 1--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  78. Mazzara, M. and Lanese, I. 2006. Towards a unifying theory for web services composition. In Web Services and Formal Methods (WS-FM). Lecture Notes in Computer Science, vol. 4184, Springer, 257--272. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Melliar-Smith, P. M. and Randell, B. 1977. Software reliability: The role of programmed exception handling. ACM Softw. Eng. Notes 2, 95--100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  80. Milner, R. 1999. Communicating and Mobile Systems: The π Calculus. Cambridge University Press, Cambridge, U.K. Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. Nakajima, S. 2006. Model-checking behavioral specification of BPEL applications. Electron. Notes Theor. Comput. Sci. 151, 2, 89--105. Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Ouyang, C., Verbeek, E., van der Aalst, W. M. P., Breutel, S., Dumas, M., and ter Hofstede, A. H. M. 2007. Formal semantics and analysis of control flow in WS-BPEL. Sci. Comput. Program. 67, 2--3, 162--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Pistore, M., Roveri, M., and Busetta, P. 2004. Requirements-driven verification of web services. Electron. Notes Theor. Comput. Sci. 105, 95--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  84. Pistore, M., Traverso, P., Bertoli, P., and Marconi, A. 2005. Automated synthesis of composite bpel4ws web services. In Proceedings of the International Conference on Web Services (ICWS). IEEE, 293--301. Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Pu, G., Zhao, X., Wang, S., and Qiu, Z. 2006. Towards the semantics and verification of BPEL4WS. Electron. Notes Theor. Comput. Sci. 151, 2, 33--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  86. Pu, G., Zhu, H., Qiu, Z., Wang, S., Zhao, X., and He, J. 2006. Theoretical foundations of scope-based compensable flow language for web service. In Proceedings of the Formal Methods for Open Object-Based Distributed Systems (FMOODS). Lecture Notes in Computer Science, vol. 4037, Springer, 251--266. Google ScholarGoogle ScholarDigital LibraryDigital Library
  87. Randell, B. 1975. System structure for software fault tolerance. IEEE Trans. Softw. Eng. 1, 2, 221--232. Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Randell, B., Lee, P., and Treleaven, P. C. 1978. Reliability issues in computing system design. ACM Comput. Surv. 10, 123--165. Google ScholarGoogle ScholarDigital LibraryDigital Library
  89. Sarang, P., Juric, M., and Mathew, B. 2006. Business Process Execution Language for Web Services BPEL and BPEL4WS 2nd Ed. Packt Publishing, Birmingham, U.K. Google ScholarGoogle ScholarDigital LibraryDigital Library
  90. Sauter, P. and Melzer, I. 2005. A comparison of ws-businessactivity and bpel4ws long-running transaction. In Proceedings of the Kommunikation in Verteilten Systemen (KiVS). Informatik Aktuell. Springer, 115--125.Google ScholarGoogle Scholar
  91. Thatte, S. 2001. XLANG—web services for business process design. Microsoft Corporation.Google ScholarGoogle Scholar
  92. van den Heuvel, W.-J. 2008. Survey on business process management. Tech. rep., S-Cube Consortium.Google ScholarGoogle Scholar
  93. van der Aalst, W. M. P. 1998. The application of petri nets to workflow management. J. Circuits, Syst. Comput. 8, 1, 21--66.Google ScholarGoogle ScholarCross RefCross Ref
  94. van der Aalst, W. M. P., Hofstede, A. H. M. T., and Weske, M. 2003. Business Process Management: A survey. In Proceedings of the Business Process Management. Springer, 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. Vaz, C., Ferreira, C., and Ravara, A. 2009. Dynamic recovering of long running transactions. In Proceedings of the 4th International Symposium on Trustworthy Global Computing (TGC). Lecture Notes in Computer Science, vol. 5474, Springer, 201--215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  96. Verbeek, H. M. W. and van der Aalst, W. 2005. Analyzing BPEL processes using petri nets. In Proceedings of the 2nd International Workshop on Applications of Petri Nets to Coordination, Workflow and Business Process Management. 59--78.Google ScholarGoogle Scholar
  97. Verhofstad, J. S. M. 1978. Recovery techniques for database systems. ACM Comput. Surv. 10, 167--195. Google ScholarGoogle ScholarDigital LibraryDigital Library
  98. Viroli, M. 2004. Towards a formal foundation to orchestration languages. Electron. Notes Theor. Comput. Sci. 105, 51--71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  99. Wang, T., Vonk, J., Kratz, B., and Grefen, P. 2008. A survey on the history of transaction management: From flat to grid transactions. Distrib. Parallel Datab. 23, 235--270. Google ScholarGoogle ScholarDigital LibraryDigital Library
  100. Weidlich, M., Decker, G., and Weske, M. 2007. Efficient analysis of BPEL 2.0 processes using p-calculus. In Proceedings of the Asia-Pacific Services Computing Conference (APSCC). IEEE, 266--274. Google ScholarGoogle ScholarDigital LibraryDigital Library
  101. Wombacher, A., Fankhauser, P., and Neuhold, E. J. 2004. Transforming BPEL into annotated deterministic finite state automata for service discovery. In Proceedings of the International Conference on Web Services (ICWS). IEEE, 316--323. Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Yang, Y., Tan, Q., Xiao, Y., Liu, F., and Yu, J. 2006. Transform BPEL workflow into hierarchical CP-nets to make tool support for verification. In Proceedings of the Frontiers of WWW Research and Development (APWeb). Lecture Notes in Computer Science, vol. 3841, Springer, 275--284. Google ScholarGoogle ScholarDigital LibraryDigital Library
  103. yun Long, H. and shi Li, J. 2009. A process algebra approach of BPEL4WS. Info. Comput. Sci. 4, 2, 93--98.Google ScholarGoogle Scholar

Index Terms

  1. Recovery within long-running transactions

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Computing Surveys
      ACM Computing Surveys  Volume 45, Issue 3
      June 2013
      575 pages
      ISSN:0360-0300
      EISSN:1557-7341
      DOI:10.1145/2480741
      Issue’s Table of Contents

      Copyright © 2013 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 3 July 2013
      • Accepted: 1 December 2011
      • Revised: 1 August 2011
      • Received: 1 March 2011
      Published in csur Volume 45, Issue 3

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Author Tags

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader