Birt:内存不足,无法执行报告
Birt: Insufficient memory to execute a report
我正在使用 Birt 4.4.0 并调用 Java class 到 运行 报告。 sql 语句 returns 不超过 100 行,但我收到 没有足够的内存来执行此报告 错误。
org.eclipse.birt.report.engine.api.impl.EngineTask handleFatalExceptions
SEVERE: There is insufficient memory to execute this report.
我尝试通过 -Xms1024m -Xmx4096m -XX:MaxPermSize=512m 增加 catalina.bat 文件上的堆 space 和 permGen 内存,但没有成功。
有什么想法吗?
嗯,写评论的时候想起去年我遇到过类似的问题:即使是最简单的查询也会导致内存问题。
注意:此答案仅在您的应用程序使用 Oracle 数据库时有效。
就我而言,我的应用程序(和 Eclipse BIRT IDE)使用的是 Java 7.
如果您使用的是 Java 7,则应使用 Oracle 的最新 ojdbc7.jar
(而非 ojdbc6.jar
)。
在我的客户注视下,我在 BIRT 上苦苦挣扎了几个小时后,我终于发现了这一点。
另请注意 https://bugs.eclipse.org/bugs/show_bug.cgi?id=407299,您可能会根据查询点击它。
我正在使用 Birt 4.4.0 并调用 Java class 到 运行 报告。 sql 语句 returns 不超过 100 行,但我收到 没有足够的内存来执行此报告 错误。
org.eclipse.birt.report.engine.api.impl.EngineTask handleFatalExceptions
SEVERE: There is insufficient memory to execute this report.
我尝试通过 -Xms1024m -Xmx4096m -XX:MaxPermSize=512m 增加 catalina.bat 文件上的堆 space 和 permGen 内存,但没有成功。
有什么想法吗?
嗯,写评论的时候想起去年我遇到过类似的问题:即使是最简单的查询也会导致内存问题。
注意:此答案仅在您的应用程序使用 Oracle 数据库时有效。
就我而言,我的应用程序(和 Eclipse BIRT IDE)使用的是 Java 7.
如果您使用的是 Java 7,则应使用 Oracle 的最新 ojdbc7.jar
(而非 ojdbc6.jar
)。
在我的客户注视下,我在 BIRT 上苦苦挣扎了几个小时后,我终于发现了这一点。
另请注意 https://bugs.eclipse.org/bugs/show_bug.cgi?id=407299,您可能会根据查询点击它。