h2 機能ページによると、H2 ドキュメントに矛盾が見られます
データベース ファイルのロック
[...] 次のファイル ロック方法が実装されています。
デフォルトの方法は FILE で、ウォッチドッグ スレッドを使用してデータベース ファイルを保護します。ウォッチドッグは毎秒ロック ファイルを読み取ります。
2 番目のメソッドは SOCKET で、サーバー ソケットを開きます。ソケット方式では、毎秒ロック ファイルを読み取る必要はありません。ソケット方式は、データベース ファイルが 1 台の (常に同じ) コンピュータによってのみアクセスされる場合にのみ使用してください。
3 つ目の方法は FS です。これは、FileChannel.lock を使用したネイティブ ファイル ロックを使用します。
ファイルをロックせずにデータベースを開くこともできます。この場合、データベース ファイルを保護するのはアプリケーション次第です。そうしないと、データベースが破損します。
上記のことから、書き込み時の同時実行性を手動で気にせずに、異なるコンピューター間でリモート ファイル システム上のデータベースを共有することはできないように思われます。ただし、高度なページでは、シリアル化されたファイルをロックする 5 番目のメソッドを追加して、次のことを許可する必要があります。
このロック モードでは、同じデータベースへの複数の接続を開くことができます。接続は、複数のプロセスや異なるコンピューターから開くことができます。データベースへの書き込み時に、アクセスは内部で自動的に同期されます。
矛盾があるというのは正しいですか?または、シリアル化されたファイルのロックを誤解しましたか?