Process locking
- 1 May 2001
- proceedings article
- Published by Association for Computing Machinery (ACM)
- p. 289-300
- https://doi.org/10.1145/375551.375612
Abstract
In this paper, we propose process locking, a dynamic scheduling protocol based on ideas of ordered shared locks, that allows for the correct concurrent and fault-tolerant execution of transactional processes. Transactional processes are well defined, complex structured collections of transactional services. The process structure comprises flow of control between single process steps and also considers alternatives for failure handling purposes. Moreover, the individual steps of a process may have different termination characteristics, i.e., they cannot be compensated once they have committed. All these constraints have to be taken into consideration when deciding how to interleave processes. However, due to the higher level semantics of processes, standard locking techniques based on shared and exclusive locks on data objects cannot be applied. Yet, process locking addresses both atomicity and isolation simultaneously at the appropriate level, the scheduling of processes, and accounts for the various constraints imposed by processes. In addition, process locking aims at providing a high degree of concurrency while, at the same time, minimizing execution costs. This is done by allowing cascading aborts for rather simple processes white this is prevented for complex, long-running processes within the same framework.Keywords
This publication has 13 references indexed in Scilit:
- Unifying concurrency control and recovery of transactions with semantically rich operationsTheoretical Computer Science, 1998
- Supporting Business Transactions via Partial Backward Recovery In Workflow Management SystemsPublished by Springer Nature ,1995
- Ensuring relaxed atomicity for flexible transactions in multidatabase systemsPublished by Association for Computing Machinery (ACM) ,1994
- Unifying concurrency control and recovery of transactionsInformation Systems, 1994
- On rigorous transaction schedulingIEEE Transactions on Software Engineering, 1991
- Locks with constrained sharing (extended abstract)Published by Association for Computing Machinery (ACM) ,1990
- The Recovery Manager of the System R Database ManagerACM Computing Surveys, 1981
- A Majority consensus approach to concurrency control for multiple copy databasesACM Transactions on Database Systems, 1979
- System level concurrency control for distributed database systemsACM Transactions on Database Systems, 1978
- The notions of consistency and predicate locks in a database systemCommunications of the ACM, 1976