Write-write conflict
Interleaved transaction conflict
In computer science, in the field of databases, write-write conflict, also known as overwriting uncommitted data is a computational anomaly associated with interleaved execution of transactions. Specifically, a write-write conflict occurs when "transaction requests to write an entity for which an unclosed transaction has already made a write request."
Given a schedule S
note that there is no read in this schedule. The writes are called blind writes.
We have a dirty write. Any attempts to make this schedule serial would give off two different results (either T1's version of A and B is shown, or T2's version of A and B is shown), and would not be the same as the above schedule. This schedule would not be serializable.
Strict 2PL overcomes this inconsistency by locking T1 out from B. Unfortunately, deadlocks are something Strict 2PL does not overcome all the time.
Sources and credits
This article is adapted from the Wikipedia article “Write-write conflict”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.