H2

共有ロックと排他ロック

DB H2

H2では、共有ロック (shared locks) と排他ロック(exclusive locks)の2種類のロックが存在する。共有ロックは、SELECT で取得される。 排他ロックは、SELECT 〜 FOR UPDATE 、INSERT、UPDATE、DELETE などで取得される。 共有ロックが取得されている場合 SQL…

ロックタイムアウト

DB H2

JPAでロックの確認をしようとしたが、H2は1秒でロックタイムアウトするようデフォルト値が設定されている為、確認できない。 次のコマンドを実行し、5秒待つように変更した。 SET DEFAULT_LOCK_TIMEOUT 5000; DEFAULT_LOCK_TIMEOUT以外にLOCK_TIMEOUTもある…

H2にさわる

DB H2

H2 Database EngineはJavaで記述されたSQLデータベースエンジンで、 もともとHypersonic SQL(今のHSQLDB)の主要開発者である、Thomas Mueller氏によって開発された。 他のデータベースと比較すると、組み込み用途にもサーバ用途にも使うことができる上、フ…