Modern software systems have frequently to face unexpected events, reacting so to reach a consistent state. In the field of concurrent and mobile systems (e.g., for web services) the problem is usually tackled using long running transactions and compensations: activities programmed to recover partial executions of long running transactions. We compare the expressive power of different approaches to the specification of those compensations. We consider (i) static recovery, where the compensation is statically defined together with the transaction, (ii) parallel recovery, where the compensation is dynamically built as parallel composition of compensation elements and (iii) general dynamic recovery, where more refined ways of composing compensation elements are provided. We define an encoding of parallel recovery into static recovery enjoying nice compositionality properties, showing that the two approaches have the same expressive power. We also show that no such encoding of general dynamic recovery into static recovery is possible, i.e. general dynamic recovery is strictly more expressive.

On the Expressive Power of Primitives for Compensation Handling / I. LANESE; C. VAZ; C. FERREIRA. - STAMPA. - 6012:(2010), pp. 366-386. (Intervento presentato al convegno 19th European Symposium on Programming tenutosi a Paphos, Cyprus nel 22-26 Marzo 2010) [10.1007/978-3-642-11957-6_20].

On the Expressive Power of Primitives for Compensation Handling

LANESE, IVAN;
2010

Abstract

Modern software systems have frequently to face unexpected events, reacting so to reach a consistent state. In the field of concurrent and mobile systems (e.g., for web services) the problem is usually tackled using long running transactions and compensations: activities programmed to recover partial executions of long running transactions. We compare the expressive power of different approaches to the specification of those compensations. We consider (i) static recovery, where the compensation is statically defined together with the transaction, (ii) parallel recovery, where the compensation is dynamically built as parallel composition of compensation elements and (iii) general dynamic recovery, where more refined ways of composing compensation elements are provided. We define an encoding of parallel recovery into static recovery enjoying nice compositionality properties, showing that the two approaches have the same expressive power. We also show that no such encoding of general dynamic recovery into static recovery is possible, i.e. general dynamic recovery is strictly more expressive.
2010
Proceedings of the 19th European Symposium on Programming
366
386
On the Expressive Power of Primitives for Compensation Handling / I. LANESE; C. VAZ; C. FERREIRA. - STAMPA. - 6012:(2010), pp. 366-386. (Intervento presentato al convegno 19th European Symposium on Programming tenutosi a Paphos, Cyprus nel 22-26 Marzo 2010) [10.1007/978-3-642-11957-6_20].
I. LANESE; C. VAZ; C. FERREIRA
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/104463
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 29
  • ???jsp.display-item.citation.isi??? 22
social impact