Distributed enforcement of integrity constraints
Abstract
This paper deals with distributed transactions that employ self-stabilization in the sense that the transaction is possibly extended by corrective actions ("stabilizers") to repair violated integrity constraints. The implementation of such an extended distributed transaction is discussed in both macro (inter-transaction) and micro (intra-transaction) aspects. In the macro level we discuss the distributed stabilizers execution protocol, the relationship with the 2PC algorithm ("the reinfection problem") and cooperative constraint evaluation and transaction termination. The Micro-level issues discussed relate to the interaction among different stabilizers. Three different alternative protocols are discussed: the basic S-Lock protocol, the extended S-Lock protocol, and the cluster graph based protocol. These protocols are compared and discussed. The paper concludes with discussion of some general properties such as: determinism and termination.