令和5年度秋期 応用情報技術者試験 午前 問30
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をロールバック対象に加えているが、T3がチェックポイント以前にコミット済みであれば、ロールバックの対象とする必要はない。 ウ: T1をロールフォワード対象に加えているが、T1がチェックポイント以前に既にコミット・反映済みであれば、改めてロールフォワードする必要はない。 エ: T1をロールフォワードに、T3をロールバックにそれぞれ加えている点で、コミット状況の判定基準からずれており、正しい組合せではない。 💡 障害回復の基本は「コミット済み(ログにコミットレコードあり)→ロールフォワードでやり直す」「未コミット(コミットレコードなし)→ロールバックで取り消す」という二分類であり、各トランザクションがチェックポイント・障害発生時点でどちらの状態だったかを図で確認するのが鍵である。
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。