平成27年度 秋期 応用情報技術者試験 午前 問30
チェックポイントを取得するDBMSにおいて,図のような時間経過でシステム障害が発生した。前進復帰(ロールフォワード)によって障害回復できるトランザクションだけを全て挙げたものはどれか。

キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:ウ
システム障害が発生すると,主記憶上のバッファの内容が失われます。チェックポイントの時点でバッファの内容はディスクに書き出されているため,回復はチェックポイントを起点に行います。
- チェックポイント前にコミット済みのトランザクション:更新はディスクに反映済みなので,回復処理は不要です。
- チェックポイント後,障害発生前にコミットしたトランザクション:更新がディスクに反映されていない可能性があるので,更新後ログを使ってロールフォワード(前進復帰)します。
-
障害発生時点で未コミットのトランザクション:更新前ログを使ってロールバック(後退復帰)します。
-
ア: T1
誤り。T1はチェックポイント前にコミットしているので,回復処理は不要です。 -
イ: T2とT3
誤り。T2とT3は障害発生時点でコミットしていないので,ロールバックの対象です。 -
ウ: T4とT5
正しい。T4(チェックポイント前に開始)とT5(チェックポイント後に開始)は,どちらもチェックポイント後,障害発生前にコミットしているので,ロールフォワードで回復できます。 -
エ: T5
誤り。チェックポイントをまたいで実行され,チェックポイント後にコミットしたT4もロールフォワードの対象です。
答え
ウ: T4とT5
出典:平成27年度 秋期 応用情報技術者試験 午前 問30