Optimizing Active Database transactions Using an Extended Multiversion Concurrency Control Protocol.
Dimitri Tombroff, François Llirbat, Eric Simon · 1995
: We study the problem of efficiently evaluating transactions that automatically invoke the execution of (deferred) database triggers at the end of the transaction. In particular, we consider an important class of triggers which may express arbitrary integrity constraints and alerters. Their event part specifies data modifications, their condition part is an arbitrary database query, and their action part can raise some alerts, issue a rollback, or "repair" the data modification that triggered the rule. An update transaction that invokes such deferred trigger(s) reads (and locks) new database items before committing. These read operations may entail inter-transactions blockings, thereby degrading the performance of active database applications. We propose a slight extension of the classical multiversion two phase locking (MV2PL) protocol whereby these reads access versions and do not take locks. We prove the correctness of this protocol, and show that its implementation requires very f...