過去問解きまくり研究所 ホーム

令和6年度 秋期 午前Ⅱ 問13

トランザクション処理

待ちグラフに関する問題

トランザクションA〜Gの待ちグラフにおいて,永久待ちの状態になっているトランザクション全てを列挙したものはどれか。ここで,待ちグラフのX→Yは,トランザクションXはトランザクションYがロックしている資源のアンロックを待っていることを表す。

〔トランザクションA〜Gの待ちグラフ〕:

B → D
C → A
C → B
D → C
D → E
E → G
F → D
F → E
答えと解説を見る

✓ これが正解ウB,C,D,F

解説

B、C、D の循環待ちと、そこを待つ F が永久待ちです。

永久待ちになるのは、待ちグラフの閉路に含まれるトランザクションと、閉路の中のトランザクションを待っているトランザクションです。辺をたどると、B は D を、D は C を、C は B を待っていて、B→D→C→B という閉路ができています。この三つは互いに相手のロック解除を待つデッドロックの状態です。F は D と E を待っています。D は閉路の中にあって解放されないので、F も永久に待ち続けます。一方、A は誰も待っていないので処理を進められ、G も同様です。E は G を待っていますが、G が終われば先に進めます。したがって B、C、D、F です。見分ける軸は、閉路を見つけたうえで、そこへ向かう辺を逆にたどることです。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:令和6年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問13

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)