読者です 読者をやめる 読者になる 読者になる

MySQL のギャップロックとロック競合

MySQL
  • REPEATABLE READ 分離レベルのときに
  • 一意にならないインデックスで更新・削除しようとするとギャップロックが発生し
  • これが複数同時になると、ロックが競合してデッドロックになる

対策としては操作対象が一意になるようにインデックスを設定する。