令和5年度 高度共通 午前I(PM試験) 問9
DBMSをシステム障害発生後に再立上げするとき,ロールフォワードすべきトランザクションとロールバックすべきトランザクションの組合せとして,適切なものはどれか。ここで,トランザクションの中で実行される処理内容は次のとおりとする。

- ア ロールフォワード:T2,T5/ロールバック:T6
- イ ロールフォワード:T2,T5/ロールバック:T3,T6
- ウ ロールフォワード:T1,T2,T5/ロールバック:T6
- エ ロールフォワード:T1,T2,T5/ロールバック:T3,T6
解答・解説を見る
正解:ア
AI解説
障害回復では、障害発生時点までにコミット済みで、更新内容がディスクへ反映済みか不明なトランザクションはログの更新後情報でロールフォワード(前進復帰)し、未コミットのまま障害を迎えた更新トランザクションはログの更新前情報でロールバック(後退復帰)する。本問ではコミット済みの更新トランザクションT2とT5をロールフォワード、未コミットの更新トランザクションT6をロールバックするアが正解。参照のみのトランザクションはデータベースを変更しないため回復処理は不要である。 ア: 正解。コミット済み更新のT2・T5は更新結果を保証するためロールフォワード、未コミット更新のT6は取り消すためロールバックする。 イ: T3は参照のみ(又はチェックポイント処理の対象外)でデータベースを更新していないため、ロールバックの必要がない。 ウ: T1はチェックポイント以前にコミットし更新が既にデータベースへ反映済みであるため、ロールフォワードは不要である。 エ: T1のロールフォワードもT3のロールバックも不要であり、回復対象の判定を誤っている。 💡 判断基準は2軸。『コミット済みか未コミットか』と『更新ありか参照のみか』。コミット済み更新=ロールフォワード、未コミット更新=ロールバック、参照のみ=何もしない、チェックポイント前に反映済み=何もしない。
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。