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 issues with IGetParameterDefinitionTask
walnash
<p>Hi,</p><p> </p><p>I have a servlet designed to get the parameter definition of a report. It uses the method getSelectionListForCascadingGroup of IGetParameterDefinitionTask to fetch the details of cascading parameters.</p><p> </p><p>My report has several cascading parameters (can be upto 6). Most of them are multiselect and each parameter has hundreds of data if not thousands. My servlet is hosted in tomcat-7. When i am trying to retrieve the selection list of the parameter which is lower in the cascading tree with the a huge set of data selected in the previous parameter(say around 400), my server throws out of memory exception ( GC overhead limit exceeded, permgen space error). </p><p> </p><p>I tried increasing the space, but it simply delays the inevitable. This issue just aggravates as i move down the cascading tree. Even with lesser selections for the previous parameters. Say, 100 for 1st, 100 for 2nd and 100 for 3rd.</p><p> </p><p>I removed all redundant code from my servlet, made sure there are no useless objects getting created to ensure there is no wastage of memory. But this issue still persists. </p><p> </p><p>I debugged in to the BIRT API GetParameterDefinitionTask, getSelectionListForCascadingGroup, and found that it is looping, for some strange reason, 100*100*100 times to get the selection list for the 4th parameter.</p><p> </p><p>Now, data stats that i have mentioned is only test data. In production i can have even more.</p><p> </p><p>So my question is what is the best way to handle such large data interactions with BIRT apis? How can i avoid this memory exceptions?</p><p> </p><p>Avinash</p>
Find more posts tagged with
Comments
mwilliams
<p>What is your BIRT version? Any way you can set up a simple example I can run to see all of what you're doing?</p>
walnash
<p>I am using BIRT 4.2.2. </p><p> </p><p>I have attached the code that is fetching the selection list for all parameters including cascading. It is a slightly modified version of the example i obtained from the BIRT website.</p><p> </p><p>I cannot attach the report that i am using as it is company confidential. The report i am using has 4 cascading parameters, all multiselect. Each parameter can have hundreds of values selected.</p>
walnash
<p>Hi,</p><p> </p><p>Any answer to this problem?</p><p> </p><p>Avinash</p>