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

haruhiko nishi edited comment on OGNL-228 at 12/13/12 3:02 PM:
---------------------------------------------------------------

In the following code of ognl.OgnlRuntime, java.lang.reflect.Method may have 
the same hash value. What about the GeneratedMethodAccessorXXX that it 
delegates the its work?

if ((result = (Class[])methodParameterTypesCache.get(m)) == null) {
   methodParameterTypesCache.put(m, result = m.getParameterTypes());
 }
return result;

                
      was (Author: hanishi):
    In the following code of ognl.OgnlRuntime, java.lang.reflect.Method may 
have the same hash value. What about the GeneratedMethodAccessorXXX that it 
delegates the its work?
{code}
if ((result = (Class[])methodParameterTypesCache.get(m)) == null) {
   methodParameterTypesCache.put(m, result = m.getParameterTypes());
 }
return result;
{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

Reply via email to