我一直在努力为 H2 数据库的以下用例寻找解决方案
我有一个 H2 数据库文件
此文件已保存在 AWS EFS 中
这是因为两个 lambda 函数可以同时访问这个 DB 文件。一个 lambda 读取文件和对该文件的其他更新
我面临以下问题 -
- 第一个 lambda 查询 H2 DB 文件并为其创建一个锁。锁在 EFS 文件系统中
- 当第二个 lambda 尝试更新同一个 H2 DB 文件时,它会在该文件上找到一个锁,并显示“原因:java.lang.IllegalStateException:文件已锁定:nio:/file.mv.db [1.4.192/ 7]"
我在互联网上搜索了很多,这个链接H2 Database multiple connections与我的用例相关
我使用了相同的方法,并在下面使用 AUTO_SERVER=TRUE 的连接 URL。
但我仍然面临同样的问题。
有人可以帮忙吗?
以下是我尝试过的连接 URL:
jdbc:h2:file/mnt/efs/dbfile;AUTOCOMMIT=ON;LOG=0;CACHE_SIZE=65536;AUTO_SERVER=TRUE
jdbc:h2:/mnt/efs/dbfile;AUTOCOMMIT=ON;LOG=0;CACHE_SIZE=65536;AUTO_SERVER=TRUE