はじめに 軽量DBのロック周りを話題にする人はあまりいません。 並列度が高い状態で使うことは稀であり、ロック周りはわりとどうでも良いことだと私も思います。でも、気になって気になって仕方ないので軽く調査しました。 調査対象 私がたまたま名前を知っていたものを調査することに決めました。 H2 Database Engine 1.0.79 Apache Derby 10.4.2.0 SQLite 3.6.4 ロックの粒度 狙ったわけではないのですが、見事にばらばら。 H2 デフォルトはテーブル全体です。行レベルロックは未サポート。ベータ版ならば、行レベルロックもサポートしてる模様。 (Features -> Comparison to Other Database Enginesより) Derby デフォルトは行ロックです。ただし、特定のトランザクションについては、Derbyがパフォーマンスの上