平成26年度春期 問29 / 80

平成26年度 春期 応用情報技術者試験 午前 問29

分散データベースにおいて図のようなコマンドシーケンスがあった。調停者がシーケンスaで発行したコマンドはどれか。ここで,コマンドシーケンスの記述にUMLのシーケンス図の記法を用いる。

問題の図

キーボード:1〜4 で解答 → 次の問題 ← 前の問題

正解と解説を見る

正解:イ

図は2相コミットメントの流れです。調停者は各システムに「COMMIT可否問合せ」を送り,すべてのシステムから「可」が返ってきたときだけCOMMITを指示します。一つでも「否」が返ってきた場合は,すべてのシステムにROLLBACK(ロールバック)を指示して,更新を取り消します。

図では,システム1は「可」,システム2は「否」と応答しているため,調停者はaでROLLBACKの実行要求を発行します。

  • ア: COMMITの実行要求
    誤り。システム2から「否」が返っているので,COMMITを指示することはできません。

  • イ: ROLLBACKの実行要求
    正しい。一つでも「否」の応答があった場合は,全システムにROLLBACKの実行要求を出して,トランザクションの原子性を保ちます。

  • ウ: 判定レコードの書出し要求
    誤り。判定レコードの書出しは,2相コミットの判定内容を調停者側で記録する処理で,各システムに発行するコマンドではありません。

  • エ: ログ書出しの実行要求
    誤り。ログ書出しの実行要求は,この場面で各システムに送るコマンドではありません。


答え

イ: ROLLBACKの実行要求

出典:平成26年度 春期 応用情報技術者試験 午前 問29

平成26年度春期の他の問題