finedb报错说明
1. 问题描述
很多用户会遇到fs登录报错:[DEPARTMENT_ALL_ID] inited failed或者CREATE EMB-DB : SET LOGSIZE FAILED!具体原因是什么呢?又如何解决?以下给出详解
2. 报错一:inited failed
部门角色中的“所有部门”初始化异常,可能是因为开启了同步数据集或者其他操作导致表结构变化了。
FS的用户配置中是否开启同步数据集那个地方,设置了开启同步数据集,使用的数据连接是FRDemo,但是FRDemo被删掉了,
导致fsconfig中记录是否同步数据集的地方失败,从而引发fs用户和部门等数据的初始化失败
解决方案:
重新设置一下开启同步数据集那个地方,保存成功才行,或者直接删掉fsconfig.xml文件,重启工程。
finedb里有脏数据
解决方案:
根据日志删除对应的表里的脏数据,或者finedb里没有重要数据的话,恢复一下备份finedb,重启工程。
3. 报错二:SET LOGSIZE FAILED!
报错信息:
error in script file line: XXX out of memory
解决方案:
只要有标明是哪一行出error的, 可以备份后, 用EditPlus打开db.script临时先删掉这一行.
如果没有这一行, finedb里没有重要数据的话,恢复一下备份finedb,重启工程。
finedb在读取的时候要生成锁住的文件db.lck,安装在C盘 默认没有写入文件的权限
报错信息:
Caused by: java.sql.SQLException: The database is already in use by another process: lockFile: com.fr.third.org.hsqldb.persist.LockFile@6cc3a1e2[file =C:\Program Files\FineReport_7.1\WebReport\WEB-INF\finedb\db.lck, exists=false, locked=false, valid=false, ] method: openRAF reason: java.io.FileNotFoundException: C:\Program Files\FineReport_7.1\WebReport\WEB-INF\finedb\db.lck (拒绝访问。)
解决方法:
用管理员身份运行或者设计器安装到其他目录
我们的报表工程里已经引用了第三方的驱动包,我们的fr-third.jar包里也有这个驱动,造成了冲突了。
报错信息:
解决方案:
删除工程目录下\WEB-INF\lib\下的hsqldb.jar,重启服务器后再次访问即可正常显示。
注:由于hsql数据库还是存在不少缺陷,因此我们建议使用平台数据迁移,这样会稳定一些,且出现问题更容易排查
关键字:hsql报错/fs登录报错/访问op=fs报错
附件列表
文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201)