昨日の Doma に関するつぶやき
最近、Twitter でつぶやいてばかりでぜんぜんここを更新していなかったので、つぶやきをまとめ、補足しておきます。
PostgreSQL の FOR UPDATE(行ロック)の話
- Doma 1.13.0 では PostgreSQL の FOR UPDATE NOWAIT 構文が使えない。FOR UPDATE は使える。
- Doma が NOWAIT つきをはじいている。
- Doma は PostgreSQL 8.0 以上サポートを表明しているので、これは NOWAIT が使えない PostgreSQL 8.0 に対しては正しい挙動。
- しかしながら PostgreSQL 8.1 以上のユーザにとってはちょっと寂しい。
- なんにしても、NOWAIT を付けただけで「悲観的排他制御には対応していない」と言われるので、FOR UPDATE すら使えないと一瞬思ってしまう。