here, S(*) = shared lock and X(*) = Exclusive lock
For 1 and 4 (both are same)
T1 |
T2 |
T3 |
S(A)
R(A) |
|
|
|
S(B)
R(B) |
|
|
|
S(C)
R(C)
X(D)
U(C) |
|
X(C)
U(B) |
|
X(B)
W(B)
commit
U(B)
U(A) |
|
|
|
W(C)
commit
U(C) |
|
|
|
W(D)
commit
U(D) |
For 3rd schedule
T1 |
T2 |
T3 |
S(A)
R(A) |
|
|
|
S(B)
R(B) |
|
|
|
S(C)
R(C) |
S(B)
R(B) |
|
|
|
S(C)
R(C) |
|
|
|
S(D)
R(D)
commit
U(C)
U(D) |
|
X(D)
U(C) |
|
X(C)
W(C)
commit
U(C)
U(B)
U(A) |
|
|
|
W(D)
commit
U(D)
U(B) |
|