【发布时间】:2022-01-06 06:48:10
【问题描述】:
我们正面临 H2 数据库版本 1.4.199 - 服务器模式的严重问题。如果不存在,应用程序数据层以编程方式创建表,例如:
CREATE TABLE IF NOT EXISTS mytable (...);
CREATE INDEX IF NOT EXISTS idx_mytable ON mytable(mycol);
并且工作好几天,将数据写入上表。重启服务后,第一次尝试连接,引擎抛出错误
org.h2.jdbc.JdbcSQLSyntaxErrorException:找不到表“mytable”; SQL 语句: 在“PUBLIC”上创建索引“PUBLIC”.“IDX_MYTABLE”。“MYTABLE”(“MYCOL”)
如果我们尝试恢复数据库,sql脚本不再包含“mytable”,所以数据肯定丢失了!我们已经安装了数百个软件,但其中一些偶尔会出现错误 (10%)。
【问题讨论】: