Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Memory profiler for birt
lowks
I have a report that is running out of memory when i try to generate in xls format. I don't really know which part of the report is eating up the memory.
Here are the specs that I am running it on:
1. OS : Gentoo
2. Memory: 9G
3. java opts: JAVA_OPTS="$JAVA_OPTS -Xms400m -Xmx400m -XX:PermSize=300m -XX:MaxPermSize
=800m -XX:-UseGCOverheadLimit"
It it gives a "Java heap" error and the report is empty. Are there any tools out there that can give me more insight into what is happening?
Thanks.
Find more posts tagged with
Comments
mwilliams
What is your BIRT version? What is your report layout like? Do you only encounter this issue in XLS output?
lowks
<blockquote class='ipsBlockquote' data-author="'mwilliams'" data-cid="76017" data-time="1303150515" data-date="18 April 2011 - 11:15 AM"><p>
What is your BIRT version? What is your report layout like? Do you only encounter this issue in XLS output?<br /></p></blockquote>
<br />
Birt version = 2.6.2 Report layout cross tab with a lot of columns. When I preview restricted to 500 row it works but when generating in xls memory is insufficient.
mwilliams
Any idea on how many rows of data you're processing? Is it only an issue in XLS? If you run using the web viewer output, do you get the same error?
lowks
<blockquote class='ipsBlockquote' data-author="'mwilliams'" data-cid="76103" data-time="1303316329" data-date="20 April 2011 - 09:18 AM"><p>
Any idea on how many rows of data you're processing? Is it only an issue in XLS? If you run using the web viewer output, do you get the same error?<br /></p></blockquote>
<br />
I think there are more than 500 rows. The web viewer works okay as by default the dataset is limited to 500 rows.
mwilliams
Are you talking about the preview? The web viewer doesn't have a 500 row limit by default like the preview does. Do you have any embedded tables or crosstabs in your report that you filter down? I haven't seen near as many memory issues with newer versions, so I'm trying to figure out if there is something in the design that could cause excessive memory usage.
lowks
mwilliams
So, if you run it in the web viewer, do you get the same error? Or is it just in the XLS output?
lowks
<blockquote class='ipsBlockquote' data-author="'mwilliams'" data-cid="76183" data-time="1303414829" data-date="21 April 2011 - 12:40 PM"><p>
So, if you run it in the web viewer, do you get the same error? Or is it just in the XLS output?<br /></p></blockquote>
<br />
I don't have web viewer configured, just that when I run genReport.sh to generate it into xls it always ends up in "memory insufficient" errors.
mwilliams
I'm talking about using the web viewer from the designer by choosing Run -> View Report -> In Web Viewer. If you get the error here as well, do you have another machine that you can try to run this on? Also, I don't think I've gotten an answer for how many database rows you're actually processing. Do you have any idea? If you filter your resultset down, do you still get an error? You might try limiting your resultset with different allowed row amounts to see if there is a threshold in which it does work.
johnw
Usually what eats up the memory in the Excel emitter is the ExcelLayoutEngine class, and this is usually caused by overly complex report designs. The layout engine has to make a lot of decisions on how to best layout the excel report to get a close approximation of what the design will look like.
You can get more insight if you use the YourKit profiler, and you can narrow down the issue to runtime or render time issues using the debug option in Excel.