]
jaikiran pai resolved JBAS-9397.
--------------------------------
Resolution: Done
Commit r111741 contains a upgrade of EJB3 depchain to 1.0.1 which contains this fix.
Marking this as resolved. The fix will be available in the next nightly build
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: