The GATE Grind

GATE 2020 CS – Question 47

Databases · Transactions and Concurrency Control · 2 marks · Multiple choice

Consider a schedule of transactions $T_1$ and $T_2$. In time order (RX = Read(X), WX = Write(X)):

T1:RA, T2:RB, T2:WB, T1:RC, T2:RD, T1:WD, T2:WC, T1:WB, T1:Commit, T2:Commit

Which one of the following schedules is conflict equivalent to the above schedule?

  1. T2:RB, T2:WB, T2:RD, T1:RA, T1:RC, T1:WD, T1:WB, T2:WC, T1:Commit, T2:Commit
  2. T1:RA, T1:RC, T1:WD, T1:WB, T2:RB, T2:WB, T2:RD, T2:WC, T1:Commit, T2:Commit
  3. T1:RA, T1:RC, T1:WD, T2:RB, T2:WB, T2:RD, T1:WB, T2:WC, T1:Commit, T2:Commit
  4. T2:RB, T2:WB, T2:RD, T2:WC, T1:RA, T1:RC, T1:WD, T1:WB, T1:Commit, T2:Commit

Practise this question in The GATE Grind →

Show answer and explanation

Correct answer: (A) T2:RB, T2:WB, T2:RD, T1:RA, T1:RC, T1:WD, T1:WB, T2:WC, T1:Commit, T2:Commit

Explanation

The conflicting pairs in the original are: T2 (RB, WB) before T1's WB, T2's RD before T1's WD, and T1's RC before T2's WC. Only option A preserves all three orderings. B reverses the WB order, C reverses RD/WD, and D puts WC before RC.