commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "haruhiko nishi (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OGNL-228) Is ognl.OgnlRuntime some root cause of PermGen OutOfMemoryError problem?
Date Thu, 13 Dec 2012 03:57:22 GMT

    [ https://issues.apache.org/jira/browse/OGNL-228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13530652#comment-13530652
] 

haruhiko nishi commented on OGNL-228:
-------------------------------------

Here is how the path to DelegatingClassLoaders looks like:
{code}
sun.reflect.DelegatingClassLoader
|_<loader> of sun.reflect.GeneratedMethodAccessor14121
   |_<class> of sun.reflect.GeneratedMethodAccessor14121
      |_delegate of sun.reflect.DelegationMethodAccessorImpl
         |_methodAccessor of java.lang.reflect.Method
            |_key of java.util.HashMap$Entry
               |_[49269] of java.util.HashMap$Entry[16384]
                  |_table of java.util.HashMap
                     |_ _methodParameterTypesCache of ognl.Runtime
                        |_[7690] of java.util.Object[20480]
                          |_ elementData of java.util.Vector
                             |_classes of org.jboss.classloader.spi.base.BaseClassLoader[Stack
Local]
                               |_<local variable> of java.lang.Thread[Stack local, Thread]
"ajp-xxx.xxx.xxx.xxx-8009-3"

 {code}
                
> Is ognl.OgnlRuntime some root cause of PermGen OutOfMemoryError problem?
> ------------------------------------------------------------------------
>
>                 Key: OGNL-228
>                 URL: https://issues.apache.org/jira/browse/OGNL-228
>             Project: Commons OGNL
>          Issue Type: Bug
>         Environment: RHEL 6 x64
>            Reporter: haruhiko nishi
>            Priority: Critical
>              Labels: OutOfMemoryError
>
> While analyzing several heap dumps using Yourkit, we have observed many instances of
DelegatingClassLoader, or more precisely sun.reflect.GeneratedMethodAccessorXXX, where XXX
represents some sequential numbers, were created through the usage of Java reflection by the
frameworks implemented in our web application.
> GeneratedMethodAccessorXXX is allegedly used for some sort of reflection optimization
mechanism according to the url at http://www-01.ibm.com/support/docview.wss?uid=swg21566549.
> Because this is what seems to be eating up our memory allocated for PermGen, as the number
of the DelegatingClassLoader is gradually increased and JVM crushes with OutOfMemoryError,
we scrutinized what is possibly blocking these DelegatingClassLoaders from being garbage collected
and found many of them are relevant to _methodParameterTypesCache of ognl.OgnlRuntime.
> Is there any known problems regarding this issue?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message