Abstract
Most business applications rely on the notion of long running transaction as a fundamental building block. This paper presents a calculus for modelling long running transactions within the framework of the π-calculus, with support for compensation as a recovery mechanism. The underlying model of this calculus is the asynchronous polyadic π-calculus, with transaction scopes and dynamic installation of compensation processes. We add to the framework a type system which guarantees that transactions are unequivocally identified, ensuring that upon a failure the correct compensation process is invoked. Moreover, the operational semantics of the calculus ensures both installation and activation of the compensation of a transaction.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Gray, J.: The transaction concept: Virtues and limitations (invited paper). In: VLDB, pp. 144–154. IEEE Computer Society, Los Alamitos (1981)
OMG: Additional Structuring Mechanisms for the OTS Specification 1.0. (2002)
Sun Microsystems: J2EE Activity Service for Extended Transactions (2004)
Microsoft, IBM, BEA: WS-Coordination/WS-Transaction Specification (2005)
Thatte, S.: XLANG: Web services for business process design. Technical report, Microsoft Corporation (2001)
OASIS: Web Services Business Process Execution Language Version 2.0 (2007)
Kavantzas, N., Olsson, G., Michkinsky, J., Chapman, M.: Web services choreography description language. Technical report, Oracle Corporation (2003)
Bocchi, L., Laneve, C., Zavattaro, G.: A calculus for long-running transactions. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 124–138. Springer, Heidelberg (2003)
Butler, M.J., Ferreira, C.: An operational semantics for StAC, a language for modelling long-running business transactions. In: De Nicola, R., Ferrari, G.-L., Meredith, G. (eds.) COORDINATION 2004. LNCS, vol. 2949, pp. 87–104. Springer, Heidelberg (2004)
Guidi, C., Lanese, I., Montesi, F., Zavattaro, G.: On the interplay between fault handling and request-response service invocations. In: 8th International Conference on Application of Concurrency to System Design, pp. 190–199. IEEE Computer Society, Los Alamitos (2008)
Butler, M.J., Hoare, C.A.R., Ferreira, C.: A trace semantics for long-running transactions. In: Abdallah, A.E., Jones, C.B., Sanders, J.W. (eds.) Communicating Sequential Processes. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)
Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Palsberg, J., Abadi, M. (eds.) POPL, pp. 209–220. ACM, New York (2005)
Bruni, R., Melgratti, H.C., Montanari, U.: Nested commits for mobile calculi: Extending join. In: Lévy, J.J., Mayr, E.W., Mitchell, J.C. (eds.) IFIP TCS, pp. 563–576. Kluwer, Dordrecht (2004)
Laneve, C., Zavattaro, G.: Foundations of web transactions. In: Sassone, V. (ed.) FOSSACS 2005. LNCS, vol. 3441, pp. 282–298. Springer, Heidelberg (2005)
Mazzara, M., Lanese, I.: Towards a unifying theory for web services composition. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 257–272. Springer, Heidelberg (2006)
Vaz, C., Ferreira, C., Ravara, A.: Dynamic recovering of long running transactions. Technical report, CITI, http://pwp.net.ipl.pt/cc.isel/cvaz/dcpi.pdf
JBoss: Web Service Transactions Programmers Guide (2007)
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, I and II. Inf. Comput. 100(1), 1–77 (1992)
Veiga, L., Ferreira, P.: Asynchronous complete distributed garbage collection. In: IPDPS. IEEE Computer Society, Los Alamitos (2005)
Vasconcelos, V.T., Honda, K.: Principal typing-schemes in a polyadic π-calculus. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 524–538. Springer, Heidelberg (1993)
Sangiorgi, D., Walker, D.: The π-calculus: a Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)
Fournet, C., Gonthier, G.: The reflexive cham and the join-calculus. In: POPL, pp. 372–385 (1996)
Garcia-Molina, H., Salem, K.: Sagas. In: Dayal, U., Traiger, I.L. (eds.) SIGMOD Conference, pp. 249–259. ACM Press, New York (1987)
Guidi, C., Lucchi, R., Gorrieri, R., Busi, N., Zavattaro, G.: SOCK: A calculus for service oriented computing. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 327–338. Springer, Heidelberg (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Vaz, C., Ferreira, C., Ravara, A. (2009). Dynamic Recovering of Long Running Transactions. In: Kaklamanis, C., Nielson, F. (eds) Trustworthy Global Computing. TGC 2008. Lecture Notes in Computer Science, vol 5474. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00945-7_13
Download citation
DOI: https://doi.org/10.1007/978-3-642-00945-7_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00944-0
Online ISBN: 978-3-642-00945-7
eBook Packages: Computer ScienceComputer Science (R0)