IPA過去問ドリル

平成24年度 秋期 システムアーキテクト試験 午前Ⅱ 問22

テクノロジ/データベース

RDBMS のロックに関する記述のうち,適切なものはどれか。ここで,X,Y はトランザクションとする。

出典:平成24年度 秋期 システムアーキテクト試験 午前Ⅱ 問22

正解:イ

解説

RDBMSのロックでは,行に対する共有ロックであっても,同じ表に対して他のトランザクションが専有ロックを獲得する操作は,行レベルのロックと表レベルのロックの整合性を保つための意図ロック(インテントロック)の仕組みによって妨げられます。したがって,XがA表内の特定行aに共有ロックを獲得しているときは,YはA表全体に対する専有ロックを獲得することはできません。

選択肢ごとの解説

  • 誤り。行aへの共有ロックと,行aとは別の特定行bへの専有ロックは,対象となる行が異なるため,通常は両立可能です。
  • 正しい。行aへの共有ロックが存在する間は,表全体に対する専有ロックの獲得は,意図ロックの仕組みによって妨げられ,Yは取得できません。
  • 誤り。Xが表に対して共有ロックを獲得している間は,Yが表に対して専有ロックを獲得することはできません(共有ロックと専有ロックは両立しません)。
  • 誤り。Xが表に対して専有ロックを獲得している間は,Yはその表内のいかなる行に対してもロックを獲得することはできません。
システムアーキテクトの過去問を演習モードで解く