The complexity of propositional linear temporal logics
Journal of the ACM (JACM)
SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Exception Handling in Workflow Management Systems
IEEE Transactions on Software Engineering - special section on current trends in exception handling—part II
Atomicity and isolation for transactional processes
ACM Transactions on Database Systems (TODS)
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
A Multidatabase Transaction Model for InterBase
VLDB '90 Proceedings of the 16th International Conference on Very Large Data Bases
Conversation specification: a new approach to design and analysis of e-service composition
WWW '03 Proceedings of the 12th international conference on World Wide Web
Designing Web Services with the J2EE 1.4 Platform: JAX-RPC, XML Services, and Clients
Designing Web Services with the J2EE 1.4 Platform: JAX-RPC, XML Services, and Clients
Analysis of interacting BPEL web services
Proceedings of the 13th international conference on World Wide Web
Theoretical foundations for compensations in flow composition languages
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
WWW '05 Proceedings of the 14th international conference on World Wide Web
Comparing two approaches to compensable flow composition
CONCUR 2005 - Concurrency Theory
Publishing and composition of atomicity-equivalent services for B2B collaboration
Proceedings of the 28th international conference on Software engineering
Verifying compensating transactions
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
A trace semantics for long-running transactions
CSP'04 Proceedings of the 2004 international conference on Communicating Sequential Processes: the First 25 Years
Failure-divergence refinement of compensating communicating processes
FM'11 Proceedings of the 17th international conference on Formal methods
Model checking inconsistency recovery costs
ICSOC'11 Proceedings of the 2011 international conference on Service-Oriented Computing
Towards cost-aware service recovery
Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures
Recovery within long-running transactions
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
Flow composition languages permit the construction of long-running transactions from collections of independent atomic services. Due to environmental limitations, such transactions usually cannot be made to conform to standard ACID semantics. We propose set consistency, a powerful, yet intuitive, notion of consistency for long-running transactions. Set consistency considers the collection of permanent (non-intermittent) changes made by a process, when viewed at the end of its execution. Consistency requirements for such collections of changes are specified as predicates over the atomic actions of a process. Set consistency generalizes self-cancellation, a standard consistency requirement for long-running transactions, where failed processes are responsible for undoing any partially completed work. Set consistency can also express strictly stronger requirements, such as mutual exclusion or dependency. We show that the set consistency verification problem for processes is co-NP complete and present an algorithm for verifying set consistency by reduction to propositional validity. We have implemented this algorithm and demonstrate the value and tractability of our approach on three real-world case studies. In each case, the consistency requirements can be verified within a second, demonstrating the practicality of our approach.