データベース

令和元年度 秋期 基本情報技術者試験 午前 問28

一つのトランザクションはトランザクションを開始した後,五つの状態(アクティブ,アボート処理中,アボート済,コミット処理中,コミット済)を取り得るものとする。このとき,取ることのない状態遷移はどれか。
遷移前の状態遷移後の状態
アアボート処理中アボート済
イアボート処理中コミット処理中
ウコミット処理中アボート処理中
エコミット処理中コミット済
  • ア 遷移前: アボート処理中 → 遷移後: アボート済
  • イ 遷移前: アボート処理中 → 遷移後: コミット処理中
  • ウ 遷移前: コミット処理中 → 遷移後: アボート処理中
  • エ 遷移前: コミット処理中 → 遷移後: コミット済

出典:令和元年度 秋期 基本情報技術者試験 午前 問28

答えと解説を見る

正解:イ

覚える知識

2相コミットの定義(分散DBの更新確認)

トランザクションはアクティブから、コミット処理中を経てコミット済、またはアボート処理中を経てアボート済になる。

この問題で必要なこと

アボート処理中からコミット処理中へ遷移することはなく、アボート処理中はアボート済へ進む。

ひっかけ

一度アボートに向かった後にコミット側へ戻る遷移を可能と思わせる。

この知識の出題:本試験系 2 回・免除試験 7 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「トランザクションと排他制御(ロック・デッドロック)」で学ぶ

同じ知識の過去問