Consider this schedule of two transactions:
| T1 | T2 |
|---|---|
| r(X) | |
| r(X) | |
| w(Y) | |
| w(Y) | |
| commit | |
| commit |
Is this schedule:
conflict serializable?
serializable?
recoverable?
cascadeless?
Consider this schedule of two transactions:
| T1 | T2 |
|---|---|
| r(Y) | |
| r(Y) | |
| w(X) | |
| r(X) | |
| w(Y) | |
| w(Y) | |
| commit | |
| commit |
Is this schedule:
conflict serializable?
serializable?
recoverable?
cascadeless?
Would any of the answers for schedule 2 change if we swapped the order of the two commits?
Precedence graphs can help us to determine if a schedule is conflict serializable.
Consider this schedule of four transactions:
| T1 | T2 | T3 | T4 | |
|---|---|---|---|---|
| 1 | r(X) | |||
| 2 | r(X) | |||
| 3 | w(Y) | |||
| 4 | r(Y) | |||
| 5 | r(Y) | |||
| 6 | w(X) | |||
| 7 | r(W) | |||
| 8 | w(Y) | |||
| 9 | r(W) | |||
| 10 | r(Z) | |||
| 11 | w(W) | |||
| 12 | r(Z) | |||
| 13 | w(Z) |
Draw a precedence graph for this schedule.
If the schedule is conflict serializable, state one possible equivalent serial schedule. If the schedule is not conflict serializable, explain briefly why the schedule is not equivalent to the serial schedule T1; T2; T3; T4. Your explanation should include a discussion of why particular actions from the original schedule are not consistent with that serial schedule.
Assume that a DBMS is using regular two-phase locking with three types of locks: shared, update and exclusive.
Consider the following partial schedule of three transactions:
|
T1 |
T2 |
T3 |
|---|---|---|
|
sl(A); r(A) |
|
|
Given the locks that the transactions would need to acquire, which of the following operations could happen next in the schedule? Explain each answer briefly.
r1(F)
w2(A)
r2(E)
w3(D)
w2(C)
r2(D) (followed sometime later by w2(D))
r3(C) (followed sometime later by w3(C))
Last updated on October 23, 2025.