Performance Analysis of Dynamic Locking with the No-Waiting Policy
Abstract
A transaction processing system with two-phase dynamic locking with the no waiting policy (DLNW) for concurrency control is considered. In this method, unlike the dynamic locking with waiting (DLW) method, transactions making conflicting lock requests are aborted (and later restarted) rather than blocked. The DLNW method eliminates blocking delays (and deadlocks), but is susceptible to cyclic restarts. It also results in more wasted processing than the DLW method, since lock conflicts are more frequent than deadlocks. Cyclic restarts are dealt with by delaying the restart of a transaction encountering a lock conflict or replacing it by a new transaction. The former method (referred to as restart waiting) results in a reduction in the degree of concurrency and hence throughput. The latter method (referred to as fake restarts) is possible in a system where there is a backlog of pending transactions which can replace blocked transactions. We develop analytic solution methods to evaluate the performance of the two variants of the DLNW method. The analytic solution methods are validated against simulation and shown to be acceptably accurate. They are then used to study the effect of the following parameters on system performance: 1) transaction size and its distribution, 2) degree of concurrency, 3) the throughput characteristic of the computer system, and 4) mixture of read-only query and update transactions. A comparison of the DLNW and DLW methods shows that DLW provides higher throughput than DLNW, except when there is no hardware resource contention (“infinite” hardware resources), the degree of lock contention is high, and aborted transactions can be replaced by new transactions (fake restarts). The restart waiting method outperforms DLW when the degree of lock contention is high and the system is thrashing with the DLW method. The DLNW method also outperforms the time-stamp ordering method. This was observed from simulation results as well as a case by case analysis of possible scenarios for data contention. © 1990 IEEE