Week 7 Solution
Week 7 Solution
Week 7 Solution
Total Marks : 20
Question 1
Consider the following schedule S involving five transactions T1 , T2 , T3 , T4 and T5 :
Marks: 2 MCQ
T1 T2 T3 T4 T5
R(X)
W(X)
R(Y)
W(Y)
R(X)
R(X)
W(X)
R(Y)
R(X) denotes read operation on data item X by transaction Ti .
W(X) denotes write operation on data item X by transaction Ti .
Choose the correct option for the above transaction schedule.
a) The schedule is neither conflict serializable nor view serializable schedule.
1
Question 2
Consider the following schedule S involving five transactions T1 , T2 , T3 , T4 and T5 :
Marks: 2 MCQ
T1 T2 T3 T4 T5
R(X)
R(X)
W(X)
W(X)
W(Z)
R(Z)
W(Z)
R(Z)
a) T4→T5→T1→T3→T2
b) T5→T4→T1→T3→T2
c) T1→T2→T3→T5→T4
d) T4→T1→T4→T3→T2
Answer: b)
Explanation: If we draw the precedence graph of the transactions as shown in the fol-
lowing, we can observe that the graph has no cycle.
So, the above schedule is a conflict serializable schedule.
All conflict serializable schedules are view serializable too.
All possible topological orderings of the above precedence graph will be the possible
conflict serializable schedule.
Hence, the correct order of execution of all transactions is: (T5→T4→T1→T3→T2)
So, option (b) is correct
2
Question 3
Consider the following schedule S involving five transactions T1 , T2 , T3 , T4 and T5 :
Marks: 2 MCQ
T1 T2 T3 T4 T5
R(X)
W(X)
W(Y)
W(Y)
R(X)
W(X)
W(Y)
a) 0
b) 1
c) 3
d) 5
Answer: b)
Explanation: If we draw the precedence graph of the schedule, we can observe that the
graph has no cycle. Hence, the above schedule is conflict serializable schedules.
Only one possible topological orderings of the above precedence graph will be the pos-
sible conflict serializable schedule.
1. T1 → T5 → T2 → T3 → T4
Hence, option b) is correct.
3
Question 4
Consider the following schedule S. Marks: 2 MCQ
T1 T2 T3
R(X)
W(X)
R(X)
W(X)
W(X)
W(Y)
a) 5
b) 3
c) 2
d) 1
Answer: d)
Explanation: Step 1: Final Update on data item: This is done on data item X,Y by T3.
Since the final update on X, Y is made by T3, the transaction T3 must execute after all
transactions T1 and T2. So, (T1,T2) → T3.
Step 2: Transaction T1 does the initial read on X; then, T2 updates on it.
Hence, the dependency is: T1 → T2
Step 3: Write Read Sequence: T2 writes X and then T3 reads X.
Hence, the dependency is: T2 → T3
Thus, the only possible way, this is possible is: T1 → T2 → T3.
Hence, total possible view serializable schedule of S = 1
So, option (d) is correct.
4
Question 5
Identify the correct statement(s) from the followings. In this context, older implies smaller
timestamp.
Marks:2 MSQ
b) In Wound-Wait Deadlock Prevention scheme, Younger transactions never wait for older
ones; they are rolled back instead.
d) In Wait-Die Deadlock Prevention scheme, Younger transactions never wait for older ones;
they are rolled back instead.
Answer: a), d)
Explanation: As per the deadlock prevention scheme, options a) and d) are correct.
For more details refer to Module 35.7.
5
Question 6
Suppose that four transactions T1 , T2 , T3 and T4 are being applied on a database. Transaction
T1 is waiting for transactions T3 and T4 ; transaction T2 is waiting for transaction T1 ,
and transaction T4 is waiting for transactions T2 and T3 to release a data item.
Identify the correct wait-for graph for the above scenario. Marks: 2 MCQ
a)
b)
c)
d)
Answer: d)
Explanation: When Ti requests a data item currently being held by Tj , then the edge Ti
→ Tj is inserted in the wait-for graph. An edge Ti → Tj implies that Ti is waiting for Tj to
release a data item.
Hence, option d) is correct.
6
Question 7
Consider the following two schedules S1 and S2. Marks: 2 MSQ
S1 S2
T1 T2 T1 T2
R(X) R(X)
W(X) W(X)
COMMIT R(X)
R(X) W(X)
W(X) COMMIT
COMMIT COMMIT
Which of the following statements is (are) true for the above two schedules S1 and S2?
Answer: a), c)
Explanation: Recoverable Schedule: If a transaction Tj reads a data item previously writ-
ten by a transaction Ti , the commit operation of Ti must appear before the commit operation
of Tj .
Cascadeless schedules: For each pair of transactions Ti and Tj such that Tj reads a data
item previously written by Ti , the commit operation of Ti appears before the read operation
of Tj .
In S1, T1 reads the data item X that was previously written by T2 , T2 committed before T1
reads X. Hence, the schedule is recoverable schedule as well as Cascadeless schedule.
In S2, T2 reads the data item X that was previously written by T1 , T1 committed before
the commit operation of T2 . Hence, the schedule is only recoverable schedule but not
Cascadeless schedule.
Hence, options (a) and (c) are correct.
7
Question 8
Consider two transactions given below where lock-X(A) denotes that Ti has obtained an
Exclusive-mode lock on data item A and lock-S(A) denotes that Ti has obtained a Shared-mode
lock on data item A. read(A) denotes read operation on data item A by the transaction Ti .
write(A) denotes write operation on data item A by the transaction Ti . Marks:2 MCQ
T1
lock-X(A)
read(A)
T2
lock-X(B)
lock-S(A)
lock-S(C)
read(A)
write(A)
unlock(A)
read(B)
lock-S(B)
write(B)
read(B)
read(C)
commit
unlock(C)
unlock(B)
commit
unlock(A)
unlock(B)
c) Only T1 follows strict two-phase locking protocol, but T2 does not follow two-phase
locking protocol.
d) Only T1 follows rigorous two-phase locking protocol but T2 does not follow two-phase
locking protocol.
Answer: c)
Explanation: Transaction T1 unlocks the Shared-mode lock before commit and unlocks all
Exclusive-mode lock after commit . That is why, it follows the strict two phase locking
protocol but not rigorous two-phase locking protocol.
Transactions T2 does not follow any two-phase locking protocol. Because there no growing
phase and shrinking phase, after unlock(A) again granted a lock-S(B).
Hence, option (c) is correct.
8
Question 9
Identify the incorrect statement(s) about the lock compatibility matrix given below, where
S denotes a shared mode lock and X denotes an exclusive mode lock.
Marks:2 MCQ
S X
S True False
X False False
a) If a transaction holds an S lock on a data item, other transactions will not be allowed to
obtain a X lock on the same data item.
b) If a transaction holds an S lock on a data item, other transactions will not be allowed to
obtain an S lock on the same data item.
c) If a transaction holds an X lock on a data item, other transactions will not be allowed to
obtain an X lock on the same data item.
d) If a transaction holds an X lock on an item, other transactions will not be allowed to obtain
an S lock on the same data item.
Answer: b)
Explanation: As per lock based protocols. Refer to Module 34 slide 10.
9
Question 10
Consider the following schedule S. Marks: 2 MCQ
T1 T2 T3
R(Y)
R(Z)
W(Y)
commit
R(Y)
W(Y)
R(Y)
W(Y)
abort
a) If T2 fails (aborted), both transactions T1, and T3 must also be rolled back.
Answer: b)
Explanation: As per the cascading rollback a single transaction failure leads to a series of
transaction rollbacks.
Hence, if T2 fails (aborted), T3 must also be rolled back.
So, option (b) is correct.
10