Weakly consistent transactions in ROSS
CASCON '93 Proceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: distributed computing - Volume 2
Hi-index | 0.00 |
Nested transactions, a generalization of atomic transactions, provide a uniform mechanism for coping with failures and obtaining concurrency within an action. Execution of a nested action is synchronized with its creating action by halting the creator until the execution of its nested action terminates. This thesis proposes a new kind of a nested action called a Disconnected Action (DA, for short) that runs asynchronously with its creating action. Disconnected actions allow additional work to be done in parallel with the rest of the work in a nested atomic action system. Work done by a DA improves the performance of its creating action, but is not needed for the correctness of this action. This thesis describes how DAs semantics are achieved; existing mechanisms, such as the two-phase commit, are modified, and serial behavior of DAs is ensured by a mechanism that uses timestamps to enforce static creation order, and tables to monitor and control dynamic serialization order of concurrent DAs. The thesis also proposes a technique that allows an action using DAs to commit in spite of some failures.