7. ギャップロックされた 空間のINSERTは止まる 5 6 10 id (pk) tx A tx B SELECT * FROM t WHERE id = 4 FOR UPDATE BEGIN BEGIN INSERT INTO t (id) VALUES (1); ブロックされる id=2,3,4も同様にブロック id=7とかはブロックされない 7 8. ギャップロック同士は ブロックしない 5 6 10 id (pk) tx A tx B SELECT * FROM t WHERE id = 4 FOR UPDATE BEGIN BEGIN SELECT * FROM t WHERE id = 3 FOR UPDATE INSERT INTO t (id) VALUES(4) INSERT INTO t (id) VALUES(3) 同じギャップ空間だけど止まらない Deadloc