The Five Color Concurrency Control Protocol: Non-Two-Phase Locking in General Databases

Partha Dasgupta, Zvi M. Kedem

Research output: Contribution to journalArticlepeer-review


Concurrency control protocols based on two-phase locking are a popular family of locking protocols that preserve serializability in general 1990 database systems. A concurrency control algorithm (for databases with no inherent structure) is presented that is practical, non two-phase, and allows varieties of serializable logs not possible with any commonly known locking schemes. All transactions are required to predeclare the data they intend to read or write. Using this information, the protocol anticipates the existence (or absence) of possible conflicts and hence can allow non-two-phase locking. It is well known that serializability is characterized by acyclicity of the conflict graph representation of interleaved executions. The two-phase locking protocols allow only forward growth of the paths in the graph. The Five Color protocol allows the conflict graph to grow in any direction (avoiding two-phase constraints) and prevents cycles in the graph by maintaining transaction access information in the form of data-item markers. The read and write set information can also be used to provide relative immunity from deadlocks.

Original languageEnglish (US)
Pages (from-to)281-307
Number of pages27
JournalACM Transactions on Database Systems (TODS)
Issue number2
StatePublished - Jan 6 1990

ASJC Scopus subject areas

  • Information Systems


Dive into the research topics of 'The Five Color Concurrency Control Protocol: Non-Two-Phase Locking in General Databases'. Together they form a unique fingerprint.

Cite this