Lock Conversion in Non-Two-Phase Locking Protocols

C. Mohan, Donald Fussell, Zvi M. Kedem, Abraham Silberschatz

Research output: Contribution to journalArticlepeer-review

Abstract

Abraham Silberschatz Department of Computer Sciences University of Texas at Austin Austin, TX 78712 A locking protocol is a set of rules governing the manner in which the database entities may be accessed. Such a protocol usually employs several kinds of locks. Most of the previous work in this area has assumed that once a transaction acquires a particular kind of lock on a data item it is not allowed to convert this lock to another kind. In this paper we perform a systematic study of the consequences of allowing lock conversions in non-two-phase locking protocols, and show how this leads to increased concurrency and affects deadlock-freedom. The non-two-phase protocols that we study are the very general guard protocols defined for databases in which a directed acyclic graph structure can be superimposed on the data items. We present very natural generalizations of these protocols, including correctness proofs, and develop deadlock removal methods.

Original languageEnglish (US)
Pages (from-to)15-22
Number of pages8
JournalIEEE Transactions on Software Engineering
VolumeSE-11
Issue number1
DOIs
StatePublished - Jan 1985

Keywords

  • Concurrency
  • consistency
  • database systems
  • deadlocks
  • locking protocols
  • rollbacks
  • serializability
  • transactions

ASJC Scopus subject areas

  • Software

Fingerprint Dive into the research topics of 'Lock Conversion in Non-Two-Phase Locking Protocols'. Together they form a unique fingerprint.

Cite this