トランザクションPが資源Xの値を4から5に更新した後にトランザクションQが開始し、Pがコミットする前にQが資源Xを参照しようとした。Qの挙動のa, bに入れる字句の組みはどれか。ただし、隔離性水準はREAD COMMITTEDとする。 〔Qの挙動〕 同時実行制御が単版2相ロッキングプロトコルの場合Qは[ a ]、多版同時実行制御(MVCC)の場合Qは[ b ]。

2相ロックは待って新値、MVCCは待たず旧版を読む

頻出データベーススペシャリスト試験2024年度 秋期 午前II14/トランザクション管理 / 同時実行制御

選択肢

正解と解説

正解: a: Pがコミット完了するまで待機した後、Xの値5を得る / b: Pのコミット完了を待機することなく、Xの値4を得る

単版(シングルバージョン)の2相ロッキングでは、更新側が排他ロックを保持したままなので、読取り側はコミットまで待たされ、解放後は更新後の値を読む。一方MVCCは更新時に旧版を残すため、読取り側はロックを待たずにコミット済みの旧版、すなわち更新前の値を読める。READ COMMITTEDでは未コミットの新値を読むことはないので、待たずに読む場合の値は更新前の4になる。

選択肢ごとの解説

出典:令和6年度 秋期 データベーススペシャリスト試験 午前II 問14(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。