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] [Comment Edited] (OGNL-228) Is ognl.OgnlRuntime some root cause of PermGen OutOfMemoryError problem?
Date Tue, 18 Dec 2012 02:14:14 GMT

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

haruhiko nishi edited comment on OGNL-228 at 12/18/12 2:13 AM:
---------------------------------------------------------------

In the _methodParameterTypesCaches HashMap retained in the ognl.OgnlRuntime, there are 16384
HashMap$Entry entries and that does not seem to be all of the methods belonging to the classes
we have in this application. Each method has its corresponding DelegatingClassLoader generated
which seems to be what is causing the PermGen OutOfMemoryError. Is there a way to disable
this feature? 
                
      was (Author: hanishi):
    In the _methodParameterTypesCaches HashMap retained in the ognl.OgnlRuntime, there are
1638 HashMap$Entry entries and that does not seem to be all of the methods belonging to the
classes we have in this application. Each method has its corresponding DelegatingClassLoader
generated which seems to be what is causing the PermGen OutOfMemoryError. Is there a way to
disable this feature? 
                  
> 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