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 Wed, 19 Dec 2012 00:02:12 GMT

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

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

Jochen: I think any webapp with huge amount of action will reproduce the "problem." (It can
be a problem, if one does not think enough of the memory consumption by the DelegatingClassLoader)
The problem is enormous number of actions and related parameter objects each of whose method
gets retained in the HashMap of ognl.OgnlRuntime in the form of 
java.lang.reflect.Method. I wonder how much of PermGen space is used for each corresponding
sun.reflect.GeneratedMethodAccessorXXX loaded by its dedicated DelegatingClassLoader when
it turns from NativeMethodAccessorImpl. Do you have any idea?
                
> 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