Details
-
Bug
-
Resolution: Done
-
Major
-
JBossAS-3.2.6 Final
-
None
-
None
Description
SourceForge Submitter: rodburgett .
The primary server class,
org.jboss.system.server.ServerImpl, performs
incomplete clean-up as JBoss shuts down. Specifically,
the life thread continues to run and not all MBeans are
removed from the MBean server.
The attached patch file contains several updates, each
is described below.
The controller, config and server mbeans were registered
in doStart() but never unregistered. A new method is
added to ShutdownHook, remove MBeans(), to
unregister these mbeans and release the MBeanServer.
ObjectNames for the server and config were available to
the hook, but the controller ObjectName was lost when
doStart() returned. A new instance variable for controller
object name is added to the ServerImpl for use at clean
up time.
The 'JBoss Life Thread' was an anonymous thread that
was started in doStart() and never stopped. A reference
to the thread is now kept in the ServerImpl instance.
doStart() now instantiates and starts a new LIfeThread,
while shutdown() interrupt it. The LifeThread class
definition is made an inner class, since it is no longer
anonymous.