geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From boes <g...@xs4all.nl>
Subject Memory leak using Geronimo 2.1.4? Having 116760 instances of LifecycleEvent
Date Fri, 01 Oct 2010 15:59:08 GMT

I'm using Geronimo 2.1.4 and yesterday one of our production servers ran into
an OutOfMemory error after running fine for at least a month. I had to kill
the geronimo java process as it did not react anymore. For another customer
I have the same setup running more than a month now. Today I made a heap
dump of the more-than-a-month-running geronimo with jmap and analyzed the
heap dump with jhat. Here I show the top of the 'Instance Counts for All
Classes (excluding platform)':

116760 instances of class org.apache.catalina.LifecycleEvent 
116760 instances of class [Lorg.apache.catalina.Container; 
8000 instances of class
org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker 
6651 instances of class org.apache.geronimo.gbean.runtime.GBeanAttribute 
6387 instances of class org.apache.geronimo.gbean.GAttributeInfo 
5288 instances of class
org.apache.geronimo.connector.outbound.connectiontracking.SharedConnectorInstanceContext 
3634 instances of class org.apache.geronimo.kernel.repository.Artifact 
3380 instances of class org.apache.geronimo.gbean.GOperationSignature 
3233 instances of class org.apache.geronimo.gbean.runtime.GBeanOperation 
3182 instances of class org.apache.geronimo.kernel.repository.Version 
2726 instances of class org.apache.geronimo.gbean.GOperationInfo 
2639 instances of class org.apache.tomcat.util.http.mapper.Mapper$Wrapper 
2210 instances of class org.apache.geronimo.gbean.AbstractNameQuery 
1719 instances of class org.apache.tomcat.util.buf.ByteChunk 
1680 instances of class
edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArrayList$COWIterator 
1670 instances of class org.apache.tomcat.util.buf.CharChunk 
1611 instances of class org.apache.tomcat.util.buf.MessageBytes 
1510 instances of class org.apache.log4j.CategoryKey 
1217 instances of class org.apache.catalina.util.LifecycleSupport 
1217 instances of class [Lorg.apache.catalina.LifecycleListener; 
1200 instances of class [Lorg.apache.catalina.Session;

If I choose the jhat list 'Instance Counts for All Classes (including
platform)' the top shows:
195159 instances of class java.util.HashMap$Entry 
170188 instances of class java.lang.String 
135287 instances of class [C 
116793 instances of class java.util.HashMap$ValueIterator 
116760 instances of class org.apache.catalina.LifecycleEvent 
116760 instances of class [Lorg.apache.catalina.Container;

I need help. How can I debug this problem? Is it a Geronimo or a Tomcat
issue? What part of Geronimo or Tomcat generates all these LifecycleEvents?
Can it be a result of some programming errors in our application? I looked
in the heap dump for classes from our own application and the first in the
list only has 208 instances.

Any ideas on what might be the cause of this huge number of instances in the
heap?

Thanks for the help
-- 
View this message in context: http://apache-geronimo.328035.n3.nabble.com/Memory-leak-using-Geronimo-2-1-4-Having-116760-instances-of-LifecycleEvent-tp1615458p1615458.html
Sent from the Users mailing list archive at Nabble.com.

Mime
View raw message