Jump to content
Changes to the Jaspersoft community edition download ×

Jasper 5.5 and Oracle 12.1 memory leak


nick.stanmore

Recommended Posts

I have recently installed Jasper 5.5 on Linux 7.3 (Red Hat) with Oracle 12.1.
There seems to be a slow memory leak in the area of com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery as after about 6 hours it will run out of heap space even though it's not in use at the moment.

jstat -gccause shows like this:

  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT    LGCC                 GCC                 
 100.00   0.00 100.00 100.00  59.99   1817   14.684 29014 28142.642 28157.326 Allocation Failure   Allocation Failure  

I used the MAT tool from Eclipse to see what was using the space and it highlighted the above arjuna class although on another heap dump it showed org.jboss.resource.adapter.jdbc.xa.XAManagedConnection.

Java options:

-Di=dxc1jas1>
-Dngs.home=/usr/local/jboss51/jboss-eap-5.1/jboss-as/server/dxc1jas1
-Djava.net.preferIPv4Stack=true
-server
-Xms1024m
-Xmx1024m
-XX:PermSize=32m
-XX:MaxPermSize=512m
-Xss2m
-XX:+UseConcMarkSweepGC
-XX:+CMSClassUnloadingEnabled
-Doracle.jdbc.defaultNChar=true
-Djavax.xml.soap.MessageFactory=org.apache.axis.soap.MessageFactoryImpl
-Djavax.xml.soap.SOAPConnectionFactory=org.apache.axis.soap.SOAPConnectionFactoryImpl
-Djavax.xml.soap.SOAPFactory=org.apache.axis.soap.SOAPFactoryImpl -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl
-server
-Duser.timezone=Europe/London
-Dprogram.name=run.sh
-Djava.endorsed.dirs=/usr/local/jboss51/jboss-eap-5.1/jboss-as/lib/endorsed
-classpath /usr/local/jboss51/jboss-eap-5.1/jboss-as/bin/run.jar:/usr/java/jdk1.7.0_45/lib/tools.jar
org.jboss.Main


Increasing the memory merely delays the OutOfMemory error so I'm restarting Jasper every 4 hours but I'd like to get a more permanent solution.

 

Link to comment
Share on other sites

  • Replies 4
  • Created
  • Last Reply

Top Posters In This Topic

Anything WARNS or ERRORS in the log files ? 
The webserver logs or jasperserver/WEB-INF/logs ? 
Maybe the jdbc drive being utilized is not  the correct one ? 
Also is there any custom files deployed to your jasperserver, you might need to check these out. 
Also maybe set logging to debug mode. 
You add log4j properties and set to debug when signing into jasperserver as admin, under the Manage tab, under Server Settings, under Log Settings.  

Did try and remove te above property and check if same issues occurs : 
-Doracle.jdbc.defaultNChar=true 

Does the leak start immediately after your restart of  is the a custom jar that is being initialized or maybe a report that is being run. This could help to pin point the issues. 

Also could be garbage collecting that is not happening as it should, maybe try another GB java method. 
Also bump -Xss2m up to 20m, as sometime the memory to handel the threads are is not enought and causes a jam at some point. Happend to me in the past.
 

Link to comment
Share on other sites

  • 3 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...