Recoverability
Recoverability MCQs — Q1–Q100
Q1
Schedule: r1(A) w2(A) c2 r1(B) c1
Which of the following is true?
A. Schedule is recoverable
B. Schedule is non-recoverable
C. Schedule is cascadeless
D. Schedule is strict
✅ Answer: A
Solution:
- T1 reads A before T2 writes A → no read-from uncommitted data.
- T2 commits before T1 commits, but T1 did not read T2’s write.
- Therefore, T1 can safely commit → schedule is recoverable.
Q2
Schedule: r1(A) w2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T1 reads A, then T2 writes A.
- T1 commits before T2 commits → T1 read a value that could be overwritten by T2.
- If T2 aborts, T1 has already committed → violates recoverability.
- Schedule is non-recoverable.
Q3
Schedule: w1(A) r2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads A after T1 wrote it.
- T1 commits before T2 → read-from committed data.
- No cascading aborts possible → recoverable schedule.
Q4
Schedule: w1(A) r2(A) abort1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 read uncommitted value from T1.
- T1 aborts → T2 read invalid data.
- T2’s commit is not recoverable → schedule is non-recoverable.
Q5
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads after T2 wrote A, but T2 commits before T3.
- T1 reads initial A → no read-from uncommitted values.
- All commits respect dependencies → recoverable.
Q6
Schedule: r1(A) w2(A) c2 r1(B) c1
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads A before T2 writes → safe.
- T2 commits → T1 reads only committed data or its own read → recoverable.
Q7
Schedule: w1(A) r2(A) w2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads A written by uncommitted T1 → dependency exists.
- T2 commits after T1 → violates recoverability if T1 aborts.
- Hence, non-recoverable.
Q8
Schedule: w1(A) r2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads committed value from T1.
- T1 committed before T2 → safe → recoverable schedule.
Q9
Schedule: r1(A) w2(A) r3(A) w2(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads A before T2 commits, but T2 commits before T3 → read-from committed data.
- No cascading aborts required → recoverable.
Q10
Schedule: r1(A) w2(A) r3(A) c2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T3 reads A before T2 commits → read-from uncommitted.
- T2 commits after T3 → violates recoverability.
- Hence, non-recoverable.
Q11
Schedule: w1(A) r2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- Both T2 and T3 read A after T1 wrote and committed → no read-from uncommitted data.
- Recoverable schedule.
Q12
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T3 reads from T2 → T2 aborts → T3 read invalid data.
- T3 already committed or about to → violates recoverability → non-recoverable.
Q13
Schedule: r1(A) r2(A) w2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial A → no dependency.
- T2 writes and commits → safe → recoverable.
Q14
Schedule: w1(A) r2(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted value from T1 → dependency.
- If T1 aborts, T2 must abort → T3 read T2’s value → chain of dependencies.
- Violates recoverability → non-recoverable.
Q15
Schedule: r1(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial value → safe.
- T2 writes and commits → T3 writes after T2 → all read-from committed values → recoverable.
Q16
Schedule: r1(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads A after T2 committed → safe.
- T1 read before T2 wrote → safe.
- All dependencies respected → recoverable.
Q17
Schedule: w1(A) r2(A) r3(A) w2(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 and T3 read committed A from T1 → safe.
- Writes to B by T2 happen after commit order → recoverable.
Q18
Schedule: r1(A) w2(A) r3(A) w2(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 has invalid data.
- Schedule is non-recoverable.
Q19
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial → safe.
- T2 and T3 write → commit order respects read-from dependencies → recoverable.
Q20
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted A from T1 → dependency chain.
- If T1 aborts, T2 must abort → T3 reads T2 → violates recoverability → non-recoverable.
Q21
Schedule: r1(A) r2(A) w2(A) c2 c1
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 writes A after reading initial → commits before T1.
- T1 read-from dependency violated? If T1 had read before T2 writes, fine, but T1 commits after T2 → depends on uncommitted? Here T1 reads A before T2 writes → safe.
- Wait carefully: T1 read A (initial) → T2 writes → T2 commits → T1 commits. Safe.
✅ Corrected Answer: A
Solution: All read-from committed values → recoverable.
Q22
Schedule: w1(A) r2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads A after T1 wrote → T1 committed first → read-from committed value.
- T3 writes A after T2 → all commits respect dependencies → recoverable.
Q23
Schedule: r1(A) w2(A) r3(A) w2(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads A after T2 commits → safe.
- T1 reads before T2 writes → safe → recoverable.
Q24
Schedule: r1(A) w2(A) r3(A) w2(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 has invalid data → violates recoverability → non-recoverable.
Q25
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value (from T2) → safe.
- No transaction read uncommitted values → recoverable.
Q26
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 read initial A → safe.
- T2 writes → T3 writes → commit order respects read-from dependencies → recoverable.
Q27
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → violates recoverability → non-recoverable.
Q28
Schedule: r1(A) r2(A) w2(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial → T2 writes → T3 writes B → commit order respects read-from dependencies → recoverable.
Q29
Schedule: w1(A) r2(A) r3(A) w2(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads committed A from T1 → safe.
- T3 reads A after T1 → safe → recoverable.
Q30
Schedule: r1(A) w2(A) r3(A) c3 c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T3 reads A before T2 commits → read-from uncommitted → if T2 aborts, T3 invalid → violates recoverability → non-recoverable.
Q31
Schedule: w1(A) r2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads committed value from T1 → safe → recoverable.
Q32
Schedule: r1(A) r2(A) w2(A) w3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 depends on T2 → violates recoverability → non-recoverable.
Q33
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value (T2) → safe → recoverable.
Q34
Schedule: r1(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value from T2 → safe.
- T1 reads before T2 → safe → recoverable.
Q35
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → violates recoverability → non-recoverable.
Q36
Schedule: w1(A) r2(A) r3(A) w2(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T2 reads committed A from T1 → safe.
- T3 reads A after T1 → safe → recoverable.
Q37
Schedule: r1(A) w2(A) r3(A) c3 c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T3 reads before T2 commits → read-from uncommitted → violates recoverability → non-recoverable.
Q38
Schedule: r1(A) r2(A) w2(A) c1 c2
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial → safe.
- T2 writes → commits → dependencies respected → recoverable.
Q39
Schedule: w1(A) r2(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted A from T1 → potential abort → T3 reads T2 → violates recoverability → non-recoverable.
Q40
Schedule: r1(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe.
- T1 read before T2 → safe → recoverable.
Q41
Schedule: w1(A) r2(A) r3(A) w2(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → invalid data.
- T3 commit depends on aborted T2 → non-recoverable schedule.
Q42
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial → safe.
- T2 writes → T3 writes → commit order respects read-from → recoverable.
Q43
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads after T2 committed → read-from committed data → recoverable.
Q44
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → violates recoverability → non-recoverable.
Q45
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value from T2 → safe → recoverable.
Q46
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads after T2 committed → safe.
- T1 reads initial → safe → recoverable.
Q47
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q48
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted A from T1 → T2 commit depends on T1.
- T3 reads T2 → chain of dependencies → violates recoverability → non-recoverable.
Q49
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads A after T2 committed → safe.
- T1 reads before T2 → safe → recoverable.
Q50
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q51
Schedule: w1(A) r2(A) r3(A) w2(B) c1 abort2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q52
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial → safe.
- T2 and T3 writes respect commit order → recoverable.
Q53
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads after T2 committed → read-from committed → recoverable.
Q54
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q55
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value from T2 → recoverable.
Q56
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All read-from dependencies respect committed values → recoverable.
Q57
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q58
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted A from T1 → chain → violates recoverability → non-recoverable.
Q59
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q60
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 invalid → non-recoverable.
Q61
Schedule: w1(A) r2(A) r3(A) w2(B) c1 abort2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
Q62
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All read-from dependencies on committed values → recoverable.
Q63
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q64
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → violates recoverability → non-recoverable.
Q65
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value → recoverable.
Q66
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All reads from committed values → safe → recoverable.
Q67
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → violates recoverability → non-recoverable.
Q68
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted from T1 → T2 → T3 → chain violates recoverability → non-recoverable.
Q69
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads after T2 committed → safe → recoverable.
Q70
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → violates recoverability → non-recoverable.
Q71
Schedule: w1(A) r2(A) r3(A) w2(B) c1 abort2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 read-from T2 → T3 has invalid data.
- Commit chain depends on aborted T2 → non-recoverable.
Q72
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T1 reads initial A → safe.
- T2 writes → T3 writes → commit order respects dependencies → recoverable.
Q73
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value from T2 → safe → recoverable.
Q74
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → T3 invalid → non-recoverable.
Q75
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value → recoverable.
Q76
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All read-from committed values → safe → recoverable.
Q77
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
Q78
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted value from T1 → chain of dependencies → violates recoverability → non-recoverable.
Q79
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q80
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → invalid → non-recoverable.
Q81
Schedule: w1(A) r2(A) r3(A) w2(B) c1 abort2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 aborts → T3 depends on T2 → violates recoverability → non-recoverable.
Q82
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All read-from dependencies respect committed values → recoverable.
Q83
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q84
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → T3 invalid → non-recoverable.
Q85
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value → recoverable.
Q86
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All reads are from committed values → recoverable.
Q87
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
Q88
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted from T1 → chain violates recoverability → non-recoverable.
Q89
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q90
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
Q91
Schedule: w1(A) r2(A) r3(A) w2(B) c1 abort2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → non-recoverable.
Q92
Schedule: r1(A) r2(A) w2(A) w3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- Commit order respects read-from dependencies → recoverable.
Q93
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → recoverable.
Q94
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → non-recoverable.
Q95
Schedule: w1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads final committed value → recoverable.
Q96
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- All reads from committed values → recoverable.
Q97
Schedule: r1(A) r2(A) w2(A) r3(A) w3(B) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
Q98
Schedule: w1(A) r2(A) w2(A) r3(A) w3(B) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 reads uncommitted from T1 → chain → violates recoverability → non-recoverable.
Q99
Schedule: r1(A) w2(A) r3(A) c1 c2 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: A
Solution:
- T3 reads committed value → safe → recoverable.
Q100
Schedule: r1(A) w2(A) r3(A) abort2 c1 c3
A. Recoverable
B. Non-recoverable
C. Cascadeless
D. Strict
✅ Answer: B
Solution:
- T2 abort → T3 read-from T2 → violates recoverability → non-recoverable.
