平成26年度 春期 応用情報技術者試験 午前 問29
分散データベースにおいて図のようなコマンドシーケンスがあった。調停者がシーケンスaで発行したコマンドはどれか。ここで,コマンドシーケンスの記述にUMLのシーケンス図の記法を用いる。

キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:イ
図は2相コミットメントの流れです。調停者は各システムに「COMMIT可否問合せ」を送り,すべてのシステムから「可」が返ってきたときだけCOMMITを指示します。一つでも「否」が返ってきた場合は,すべてのシステムにROLLBACK(ロールバック)を指示して,更新を取り消します。
図では,システム1は「可」,システム2は「否」と応答しているため,調停者はaでROLLBACKの実行要求を発行します。
-
ア: COMMITの実行要求
誤り。システム2から「否」が返っているので,COMMITを指示することはできません。 -
イ: ROLLBACKの実行要求
正しい。一つでも「否」の応答があった場合は,全システムにROLLBACKの実行要求を出して,トランザクションの原子性を保ちます。 -
ウ: 判定レコードの書出し要求
誤り。判定レコードの書出しは,2相コミットの判定内容を調停者側で記録する処理で,各システムに発行するコマンドではありません。 -
エ: ログ書出しの実行要求
誤り。ログ書出しの実行要求は,この場面で各システムに送るコマンドではありません。
答え
イ: ROLLBACKの実行要求
出典:平成26年度 春期 応用情報技術者試験 午前 問29