Hi guys,

Thanks for the links! Actually I used both of them while working on
the memory leak problem.

The tomcat wiki entry is a great resource and the Eclipse Memory
Analyzer is a neat tool (if you know how to use it, for which you need
some tutorials at first).

Regards,
Jakob

2010/10/28 Mike Kienenberger <mkien...@gmail.com>:
> I started reading the link you posted and ended up here:
>
> This also talks about classloader memory leaks in general, how to
> identify them using the Eclipse Memory Analyzer (can also be run as a
> standalone app), and how to determine what needs to be done to fix
> them.
>
> http://dev.eclipse.org/blogs/memoryanalyzer/2008/05/17/the-unknown-generation-perm/
>
>
>
> On Thu, Oct 28, 2010 at 4:35 AM, Matthias Wessendorf <mat...@apache.org> 
> wrote:
>> Oh, the tomcat folks have a good write on this topic:
>> http://wiki.apache.org/tomcat/MemoryLeakProtection
>>
>> On Thu, Oct 28, 2010 at 10:33 AM, Matthias Wessendorf <mat...@apache.org> 
>> wrote:
>>> In Tomcat I also see this, using 2.0.2:
>>>
>>> points to "StartupFacesContextImpl" and to "RuntimeConfig" as well
>>>
>>> .10.2010 15:37:54 org.apache.catalina.loader.WebappClassLoader
>>> clearThreadLocalMap
>>> SCHWERWIEGEND: The web application [/webprofile] created a ThreadLocal
>>> with key of type [java.lang.ThreadLocal] (value
>>> [java.lang.threadlo...@203822fc]) and a value of type
>>> [org.apache.myfaces.context.servlet.StartupFacesContextImpl] (value
>>> [org.apache.myfaces.context.servlet.startupfacescontexti...@4580deea])
>>> but failed to remove it when the web application was stopped. This is
>>> very likely to create a memory leak.
>>> 27.10.2010 15:37:54 org.apache.catalina.loader.WebappClassLoader
>>> clearThreadLocalMap
>>> SCHWERWIEGEND: The web application [/webprofile] created a ThreadLocal
>>> with key of type [java.lang.ThreadLocal] (value
>>> [java.lang.threadlo...@faaf84c]) and a value of type
>>> [org.apache.myfaces.context.servlet.StartupFacesContextImpl] (value
>>> [org.apache.myfaces.context.servlet.startupfacescontexti...@21934d9d])
>>> but failed to remove it when the web application was stopped. This is
>>> very likely to create a memory leak.
>>> 27.10.2010 15:37:54 org.apache.catalina.loader.WebappClassLoader
>>> clearThreadLocalMap
>>> SCHWERWIEGEND: The web application [/webprofile] created a ThreadLocal
>>> with key of type [java.lang.ThreadLocal] (value
>>> [java.lang.threadlo...@4dcc8fa3]) and a value of type
>>> [org.apache.myfaces.config.RuntimeConfig] (value
>>> [org.apache.myfaces.config.runtimecon...@30ea3e3c]) but failed to
>>> remove it when the web application was stopped. This is very likely to
>>> create a memory leak.
>>>
>>>
>>>
>>>
>>> .Matthias
>>>
>>> On Fri, Oct 15, 2010 at 2:36 PM,  <ssilv...@redhat.com> wrote:
>>>> Quoting Bruno Aranda <brunoara...@gmail.com>:
>>>>
>>>>> Using tomcat 7 I get this warning...
>>>>>
>>>>> SEVERE: The web application [/editor-2.0-SNAPSHOT] created a ThreadLocal
>>>>> with key of type [java.lang.ThreadLocal] (value
>>>>> [java.lang.threadlo...@41649a55]) and a value of type
>>>>> [org.apache.myfaces.config.RuntimeConfig] (value
>>>>> [org.apache.myfaces.config.runtimecon...@33d063fd]) but failed to remove
>>>>> it
>>>>> when the web application was stopped. This is very likely to create a
>>>>> memory
>>>>> leak.
>>>>>
>>>>> I don't know if the RuntimeConfig could be the one responsible of the leak
>>>>> in Jboss?
>>>>
>>>> That's exactly the kind of leak that Mojarra had.
>>>>
>>>> The other leak I've been seeing in code lately is where you use a
>>>> WeakHashMap and the value contains the key.  Your key/value will never be
>>>> removed in that case.  See the WeakHashMap javadoc if you aren't familiar
>>>> with that leak.
>>>>
>>>>>
>>>>> Bruno
>>>>>
>>>>> On 15 October 2010 13:12, <ssilv...@redhat.com> wrote:
>>>>>
>>>>>> Thanks Werner.  Hope someone can take a look before 2.0.3.
>>>>>>
>>>>>> Stan
>>>>>>
>>>>>>
>>>>>> Quoting Werner Punz <werner.p...@gmail.com>:
>>>>>>
>>>>>>  Am 15.10.10 14:04, schrieb ssilv...@redhat.com:
>>>>>>>
>>>>>>>> I'm pretty sure 2.0.1 has a memory leak on undeploy.  Mojarra had an
>>>>>>>> undeploy leak and it took a long time to track it down.  The same test
>>>>>>>> I
>>>>>>>> was using on Mojarra also failed on MyFaces but I haven't had time to
>>>>>>>> track down the leak in MyFaces.
>>>>>>>>
>>>>>>>> Maybe this is fixed in 2.0.2?  If not maybe someone can go ahead and
>>>>>>>> take a look?  The mem leak keeps MyFaces from passing TCK on JBoss AS.
>>>>>>>>  To test, all you need to do is create a small exploaded JSF app.  Then
>>>>>>>> have a script that touches web.xml every 10 seconds.  That will cause
>>>>>>>> the app to redeploy.  You will get a PermGen error in about an hour.
>>>>>>>>
>>>>>>>
>>>>>>> Hi Stan I opened a ticket under
>>>>>>> https://issues.apache.org/jira/browse/MYFACES-2942
>>>>>>>
>>>>>>> Just to make sure the info is not lost.
>>>>>>> I hope you dont mind that I just copy pasted the info you gave here.
>>>>>>>
>>>>>>>
>>>>>>> Werner
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Matthias Wessendorf
>>>
>>> blog: http://matthiaswessendorf.wordpress.com/
>>> sessions: http://www.slideshare.net/mwessendorf
>>> twitter: http://twitter.com/mwessendorf
>>>
>>
>>
>>
>> --
>> Matthias Wessendorf
>>
>> blog: http://matthiaswessendorf.wordpress.com/
>> sessions: http://www.slideshare.net/mwessendorf
>> twitter: http://twitter.com/mwessendorf
>>
>



-- 
Jakob Korherr

blog: http://www.jakobk.com
twitter: http://twitter.com/jakobkorherr
work: http://www.irian.at

Reply via email to