javatomcatbirtbirt-emitter

Birt: Insufficient memory to execute a report


I'm using Birt 4.4.0 and calling a Java class to run the reports. The sql statement returns not more than 100 lines but I'm getting There is insufficient memory to execute this report error.

org.eclipse.birt.report.engine.api.impl.EngineTask handleFatalExceptions
SEVERE: There is insufficient memory to execute this report.

I tried to increase the both heap space and permGen memory on catalina.bat file by -Xms1024m -Xmx4096m -XX:MaxPermSize=512m but no luck.

Any ideas?


Solution

  • Hmm, while writing the comment I remembered that last year I had a similar problem: Even the most simple queries caused memory problems.

    Note: This answer is only valid if your application is using an Oracle DB.

    In my case, my application (and the Eclipse BIRT IDE) was using Java 7.

    If you are using Java 7, you should use the latest ojdbc7.jar from Oracle (not ojdbc6.jar). I finally found this out after several hours of struggling around with BIRT while my clients were watching.

    Also note https://bugs.eclipse.org/bugs/show_bug.cgi?id=407299, which you might hit depending on your query.