一つのトランザクションはトランザクションを開始した後、五つの状態(アクティブ、アボート処理中、アボート済、コミット処理中、コミット済)を取り得るものとする。このとき、取ることのない状態遷移はどれか。
アボートは不可逆。コミット処理中→アボートはあり得る
| 遷移前の状態 | 遷移後の状態 | |
|---|---|---|
| ア | アボート処理中 | アボート済 |
| イ | アボート処理中 | コミット処理中 |
| ウ | コミット処理中 | アボート処理中 |
| エ | コミット処理中 | コミット済 |
選択肢
- ア遷移前:アボート処理中 → 遷移後:アボート済
- イ遷移前:アボート処理中 → 遷移後:コミット処理中
- ウ遷移前:コミット処理中 → 遷移後:アボート処理中
- エ遷移前:コミット処理中 → 遷移後:コミット済
正解と解説
正解:イ 遷移前:アボート処理中 → 遷移後:コミット処理中
トランザクションはコミット処理の途中で障害や制約違反が起きれば、そこからアボート処理へ移って取消しを行うことがある。一方、いったんアボート処理に入った時点で結果を取り消すことが確定しているので、そこからコミット処理へ戻ることはあり得ない。したがってアボート処理中からコミット処理中への遷移だけが起こらない。
選択肢ごとの解説
- ア取消し処理が完了してアボート済になる、通常の遷移である。
- イ正解。取消しが確定した後にコミットへ戻ることはない。
- ウコミット処理中の障害でロールバックへ移ることは起こり得る。
- エコミット処理が正常終了してコミット済になる、通常の遷移である。
同じ分野の他の問題
- DBMSに実装すべき原子性(atomicity)を説明したものはどれか。2024年度 公開問題 科目A 問7
- トランザクションが,データベースに対する更新処理を完全に行うか,全く処理しなかったかのように取り消すか,のどちらかの結果…2023年度 公開問題 科目A 問7
- ディスク障害時に、フルバックアップを取得してあるテープからディスクにデータを復元した後、フルバックアップ取得時以降の更新…2019年度 春期 午前 問57
- 2相ロッキングプロトコルに従ってロックを獲得するトランザクションA、Bを図のように同時実行した場合に、デッドロックが発生…2019年度 秋期 午前 問29
- データベースが格納されている記憶媒体に故障が発生した場合,バックアップファイルとログを用いてデータベースを回復する操作は…2018年度 秋期 午前 問30
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。