590 likes | 717 Views
Process Calculi for Long Running Transactions. Hern án Melgratti IMT Lucca Joint work with R. Bruni and U. Montanari. Two words about Composition. Two words about Composition. Orchestration Structured Flow. Two words about Composition. Orchestration Structured Flow Link-based Flow.
E N D
Process Calculi for Long Running Transactions Hernán Melgratti IMT Lucca Joint work with R. Bruni and U. Montanari Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow • Choreography B A C Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow • Choreography • Global View A B B C C A B 1 A 2 3 C Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow • Choreography • Global View B 1 A 2 3 C Dagstuhl Seminar: Autonomous and Adaptive Web Services
Two words about Composition • Orchestration • Structured Flow • Link-based Flow • Choreography • Global View • Local View A C B C B 1 A 2 B A 3 C Dagstuhl Seminar: Autonomous and Adaptive Web Services
Flows & Compensations Transactional Process A3 A2 A1 A5 A4 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Flows & Compensations Transactional Process A3 A2 B3 B2 A1 A5 B1 B5 A4 B4 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Flows & Compensations Transactional Process A3 A2 B3 B2 A1 A5 B1 B5 A4 B4 Dagstuhl Seminar: Autonomous and Adaptive Web Services
PC for Compensable Flows • Structured Activity Compensation (StAc) [BCFGHV02, BF04] • Compensating CSP (cCSP) [BHF04] • Sagas Calculi [BMM05] • BPEL0 [PZZSXH06] Dagstuhl Seminar: Autonomous and Adaptive Web Services
(Basic) cCSP [BHF04] Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(1) • Each P is associated with a set of traces • set of special events = { , !, ? } (disjoint from ) • traces p,q,... are -event-terminated sequences of actions in . • A,B,..., trace leading to normal termination • A,B,...,! trace leading to interrupt throw • A,B,...,? trace leading to interrupt yield Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) THROWW A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) THROWW A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Trace Semantics cCSP(2) THROWW A1 A2 B1 B2 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Parallel Sagas Dagstuhl Seminar: Autonomous and Adaptive Web Services
Parallel Sagas Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (1) • Activities may succeed or fail Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (1) • Activities may succeed or fail • A Saga under either • Commits • Aborts • Fails Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (2) and = A1;…;An S Ak A1 Aj An Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (2) and = A1;…;An S Ak A1 Aj An and = A1;…;Ak-1;Bk-1;…;B1 S Ak A1 Aj An B1 Bj Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (2) and = A1;…;An S Ak A1 Aj An and = A1;…;Ak-1;Bk-1;…;B1 S Ak A1 Aj An B1 Bj and = A1;…;Ak-1;Bk-1;…;Bj+1 S * Ak A1 Aj An B1 Bj Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (3) B1 Bj Bn B’1 B’j A1 A2 A’1 C1 Ck Cm C’1 C’k C’m A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;…Cm;C’m;…;C’1);A’1 Dagstuhl Seminar: Autonomous and Adaptive Web Services
Semantics of Parallel Sagas (3) B1 Bj Bn B’1 B’j A1 A2 A’1 C1 Ck Cm C’1 C’k C’m A1;(B1;…;Bj-1;B’j-1;…;B’1 | 0);A’1 A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;C’1);A’1 … A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;…Cm;C’m;…;C’1);A’1 Dagstuhl Seminar: Autonomous and Adaptive Web Services
cCSP vs Parallel Sagas Calculus • [ A % A° | B % B° | THROWW ] =traces Dagstuhl Seminar: Autonomous and Adaptive Web Services
cCSP vs Parallel Sagas Calculus • [ A % A° | B % B° | THROWW ] =traces • (A;A°) | (B;B°) naive Sagas Dagstuhl Seminar: Autonomous and Adaptive Web Services
cCSP vs Parallel Sagas Calculus • [ A % A° | B % B° | THROWW ] =traces • (A;A°) | (B;B°) • SKIP (A;A°) (B;B°) (A|B);(A°|B°) naive Sagas cCSP Dagstuhl Seminar: Autonomous and Adaptive Web Services
cCSP vs Parallel Sagas Calculus • [ A % A° | B % B° | THROWW ] =traces • (A;A°) | (B;B°) • SKIP (A;A°) (B;B°) (A|B);(A°|B°) • SKIP (A;A°) (B;B°) (A;A°)|(B;B°) naive Sagas cCSP revised Sagas Dagstuhl Seminar: Autonomous and Adaptive Web Services
cCSP vs Parallel Sagas Calculus • [ A % A° | B % B° | THROWW ] =traces • (A|B) ; (A°|B°) • (A;A°) | (B;B°) • SKIP (A;A°) (B;B°) (A|B);(A°|B°) • SKIP (A;A°) (B;B°) (A;A°)|(B;B°) naïve cCSP naïve Sagas cCSP revised Sagas Dagstuhl Seminar: Autonomous and Adaptive Web Services
No Interruption Interruption Centralized Compensation Naïve cCSP cCSP Distributed Compensation Revised Sagas Naïve Sagas cCSP vs Sagas Calculi Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (1) • Transactional Pi (t) [BLZ03] • Committed Join (cJoin) [BMM04] • Error handling in Pi [ML04] • Web-Pi [LZ05] • Pik, Pike [CD03] Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Interaction-based transactions (2) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (1) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (2) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (2) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services
Transactional Pi (2) Hotel Client Dagstuhl Seminar: Autonomous and Adaptive Web Services