]
Jürgen Koras commented on JBAS-9397:
------------------------------------
I can confirm that my test case runs well with these changes.
So it fixes the issue. :-)
Memory leak in EJB3.1 no interface view for stateful beans
----------------------------------------------------------
Key: JBAS-9397
URL:
https://issues.jboss.org/browse/JBAS-9397
Project: Legacy JBoss Application Server 6
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: EJB
Affects Versions: 6.0.0.Final
Environment: All platforms
Reporter: Jürgen Koras
Assignee: jaikiran pai
Priority: Critical
Fix For: 6.1.0
Attachments: JavassistProxyFactory-patch.txt
Using a stateful no-interface bean causes a memory leak in PermGen space. This can easily
be reproduced by creating and removing such a bean. On my machine it fails after 22500
instances.
The problem is that for each instance of a bean a new Proxy-class is generated.
This is done using javassist framework in the class
org.jboss.ejb3.proxy.javassist.JavassistProxyFactory in method createProxy(Class[],
InvocationHandler). Here the depreciated javassist method (instance).setHandler(...) is
used. Due to documentation
(
http://www.csg.is.titech.ac.jp/~chiba/javassist/html/javassist/util/proxy...)
this call deactivates the cache!
The solution is simply to remove that call and pass the handler right in the
(instance).create(...) method.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: