HSQLDB 在使用嵌套查询且数据库处于只读模式时触发 OutOfMemoryError
HSQLDB triggers OutOfMemoryError when using nested queries and the DB is in read-only mode
对于具有大约 300000 个查询的复杂用例,我们在只读模式下使用 HSQLDB。过了一会儿,我们运行变成了OutOfMemoryError
.
问题是子select 查询和只读的组合,所有其他组合工作得很好而且很快:
simple select nested select
DB read only works OOM
DB read/write works works
Here 是一个简单的复制器,包括用于复制器的(只读)数据库。
要切换到 read/write 数据库,只需删除 repo.properties 中的行 "readonly=true" 并再次 运行 测试。
我怀疑 RowStoreAVLHybrid
class 是问题的一部分,因为 class 仅用于 subselect+只读情况。
知道除了将数据库切换到 read/write 之外我还能做什么吗?我想不惜一切代价避免什么?
此错误没有解决方法。它已被解决,并提交了 HSQLDB 版本 2.5.0 版本的 dev-three 代码分支的修复程序。
对于具有大约 300000 个查询的复杂用例,我们在只读模式下使用 HSQLDB。过了一会儿,我们运行变成了OutOfMemoryError
.
问题是子select 查询和只读的组合,所有其他组合工作得很好而且很快:
simple select nested select
DB read only works OOM
DB read/write works works
Here 是一个简单的复制器,包括用于复制器的(只读)数据库。
要切换到 read/write 数据库,只需删除 repo.properties 中的行 "readonly=true" 并再次 运行 测试。
我怀疑 RowStoreAVLHybrid
class 是问题的一部分,因为 class 仅用于 subselect+只读情况。
知道除了将数据库切换到 read/write 之外我还能做什么吗?我想不惜一切代价避免什么?
此错误没有解决方法。它已被解决,并提交了 HSQLDB 版本 2.5.0 版本的 dev-three 代码分支的修复程序。