|














|
|
 |
|
 |
|
An Adaptable Constrained Locking Protocol for High Data Contention Environments
|
Shalab Goel,
Bharat Bhargava, and
Sanjay K. Madria
View Paper (PDF)
Return to Session 6A: Transaction Management
Multiversions of data are used in database
systems to increase concurrency and to provide efficient recovery. Data
versions improves the concurrency by allowing the concurrent execution of "non-conflicting" read-write lock requests on different versions of data in an arbitrary
fashion. A transaction that accesses a data item version which is later
diagnosed to lead to an incorrect execution, is aborted. This act is reminiscent
of the validation phase in the optimistic concurrency control schemes. Various
performance studies suggest that these schemes perform poorly in high data
contention environments where the excessive transaction aborts result due to
the failed validation.
We propose an adaptable constrained two-version two-phase
locking (C2V2PL) scheme in which these "non-conflicting" requests are
allowed only in a constrained manner. C2V2PL schemes assumes that a lock
request failing to satisfy the specific constraints will lead to an incorrect execution
and hence, must be either rejected or blocked. This eliminates the need for a
separate validation phase. When the contention for data among the concurrent
transactions is high, the C2V2PL scheduler in aggressive state rejects such
lock requests. The deadlock free nature of C2V2PL scheduler adapts to the low
data contention environments by accepting the lock request that have failed the
specific constraints but contrary to the assumption, will not lead to an
incorrect execution. Thus improving the performance due to reduced transaction
aborts in this conservative state.
Copyright(C) 2000 ACM
|
|
|
|
|
|
|