Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Update Locks - New Consistency Control Technique for Distributed Data

IP.com Disclosure Number: IPCOM000106739D
Original Publication Date: 1993-Dec-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 4 page(s) / 156K

Publishing Venue

IBM

Related People

Cohn, DL: AUTHOR [+4]

Abstract

A conventional read-lock guarantees that while a transaction is holding such a lock on a data item, the item will not be changed. A write-lock guarantees that changes made by a writer will not be visible until the writing is complete and the lock is removed. A write-lock is exclusive and precludes concurrent read- or write-locks. In a shared memory system, where there is only one copy of the item, these two types of locks appear to provide all necessary options. However, in a distributed system, there are multiple copies of the item which suggests a third type of lock.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 37% of the total text.

Update Locks - New Consistency Control Technique for Distributed Data

      A conventional read-lock guarantees that while a transaction is
holding such a lock on a data item, the item will not be changed.  A
write-lock guarantees that changes made by a writer will not be
visible until the writing is complete and the lock is removed.  A
write-lock is exclusive and precludes concurrent read- or
write-locks.  In a shared memory system, where there is only one copy
of the item, these two types of locks appear to provide all necessary
options.  However, in a distributed system, there are multiple copies
of the item which suggests a third type of lock.

      This third lock type is called an update-lock.  Like a
write-lock, an update lock allows a transaction to be the exclusive
writer of a data item and prevents other transactions from seeing
partially written data.  However, like a read-lock, an update-lock
may be granted while other transactions hold read-locks.  The key to
assuring data consistency is in the method used to propagate changes
to the data when the update-lock is released.

      Compatibility of an update-lock with read-locks and write-locks
is governed by the lock compatibility matrix given in Table 1.  If
transaction T requests an update-lock on item A which is currently
read-locked by a transaction T', the lock is granted.  Then, T can
make the necessary updates to a copy of A while T', and possibly
other transactions which have read-locks on A, continue to read the
original.  However, no further locks are granted on A until T
releases its update-lock.

      A request for the release of the update-lock from T is granted
only after all the existing read-locks on A are released.  Then, the
changes made by T are propagated to all the copies of A.  Any access
that is permitted by the conventional read/write locking scheme is
also permitted by this scheme, and in addition some accesses
(corresponding to update-locks granted in presence of existing
read-locks) not permitted by the conventional scheme are also
permitted.  Thus, the proposed scheme guarantees a level of
concurrency that is at least equal to, and frequently greater than,
that provided by conventional read/write locks while allowing the
same consistency assurances.  When the data is distributed and
transactions act on replicas of the data, the greater concurrency
translates into better performance.  Even for physically shared data,
the cost of making a copy of the data may be less than the value of
the concurrency improvement.

      A variant of the update locking scheme is defined by the lock
compatibility matrix given in Table 2.  In this variant, read-locks
are granted on an update-locked item until a request to release the
update-lock is received.  Thereupon, no further locks are granted
until all of the existing read-locks are released, at which time the
update-lock release request is fulfilled.  This scheme may perform
bet...