Oracle の売りの1つは、完全な行レベルロックのサポートなんだけど、
MySQL や Postgres もサポートしている。
SQL Server や DB2 は、ロックエスカレーションが起こるので、
行レベルロックは完全じゃない。
その実験を見学。
ところがロックエスカレーションどころかテーブルロックしてひどいことに。
1万行のテーブルを作って、トランザクションを設定して、
1行目を update しながら、1万行目を select したら帰ってこないし。
トランザクションを commit すると当然帰ってくるけど。
なにこれ?