Let Ri(z) and Wi(z) denote read and write operations on a data element z by a transaction Ti, respectively. Consider the schedule S with four transactions.
S: R4(x) R2(x) R3(x) R1(y) W1(y) W2(x) W3(y) R4(y)
Which one of the following serial schedules is conflict equivalent to S?
A.
T1 → T3 → T4 → T2
B.
T1 → T4 → T3 → T2
C.
T4 → T1 → T3 → T2
D.
T3 → T1 → T4 → T2
Solution:
T1 | T2 | T3 | T4 |
R4(x) | |||
R2(x) | |||
R3(x) | |||
R1(y) | |||
W1(y) | |||
W2(x) | |||
W3(y) | |||
R4(Y) |
The precedence graph for the above four transactions is
Option A: T1 → T3 → T4 → T2 This is conflict serializable.
OptionB: Dirty Read problem W3(y) and R4(y)
Option C: Dirty Read problem W1(y) and R4(y)
Option D: Lost Update problem W1(y) and W3(y)