[
http://jira.jboss.com/jira/browse/JBAS-5414?page=all ]
Brian Stansberry reopened JBAS-5414:
------------------------------------
There are still problems with this:
1) TP.ProtocolAdapter creates a ThreadFactory during the channel connect phase, too late
for it to be managed by the AS channel factory.
2) FD_SOCK.init() creates a thread for ServerSocketHandler. That thread is created before
the factory is managed by the channel factory.
For the latter, I can have the channel factory set the TCCL to its classloader before
creating any channel. The former seems like a more difficult problem.
Application class loaders leak to JGroups thread pools
------------------------------------------------------
Key: JBAS-5414
URL:
http://jira.jboss.com/jira/browse/JBAS-5414
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Clustering
Affects Versions: JBossAS-5.0.0.Beta4
Reporter: Brian Stansberry
Assigned To: Brian Stansberry
Fix For: JBossAS-5.0.0.CR1
Application threads carrying messages down can end up creating pool threads in the
various JGroups thread pools, and will leak their TCCL to the pool thread.
Immediate solution is to have the AS channel factory inject specialized thread pools into
the channels it creates. Specialized thread pool will ensure TCCL leaks don't occur,
using the same basic approach as was used for JBCOMMON-41.
We'll see whether JGroups can add the ability to handle this itself.
Also need to ensure that the default domain classloader is the TCCLwhenever the AS
(including EJB3 and Hibernate) connects a channel. This will prevent leakage of user
deployment classloaders to the many JGroups threads created during Channel.connect().
Currently this isn't an issue as all channels are created as part of deployment of
core services where the TCCL is the default domain loader. But, this will become an issue
as we switch to lazy-initializing JBoss Cache instances as part of deploying user apps.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira