Keith Wall created QPID-5241:
--------------------------------

             Summary: [Java Broker] JMX Management can cause NPE in case of 
premature shutdown
                 Key: QPID-5241
                 URL: https://issues.apache.org/jira/browse/QPID-5241
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: 0.25
            Reporter: Keith Wall
            Priority: Minor


As highlighted by the BDB HA Management tests, if the broker needs to shutdown 
prematurely during its startup sequence, the stopping of the  JMXManagement 
module may cause a NPE.
 
{noformat}
BROKER: UNKNOWN 
nodetestRestartNodeWithNewPortNumberWithoutFirstCallingUpdateAddressThrowsAnException10005(-1)
 2013-10-16 02:19:46,749 DEBUG [server.configuration.updater.TaskExecutor] 
Performing task ChangeStateTask [object=BrokerAdapter 
[id=9bb0597b-4809-4245-890b-c4e48a7f3a14, name=Broker], expectedState=null, 
desiredState=STOPPED]
BROKER: UNKNOWN 
nodetestRestartNodeWithNewPortNumberWithoutFirstCallingUpdateAddressThrowsAnException10005(-1)
 2013-10-16 02:19:46,752 ERROR [server.model.adapter.BrokerAdapter] Failed to 
stop JMXManagement [id=89ff5ea6-9cbe-48ef-8b7d-41bb05a3e21f, 
name=MANAGEMENT-JMX]
BROKER: java.lang.NullPointerException
BROKER:         at 
org.apache.qpid.server.jmx.JMXManagement.stop(JMXManagement.java:233)
BROKER:         at 
org.apache.qpid.server.jmx.JMXManagement.setState(JMXManagement.java:119)
BROKER:         at 
org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:122)
BROKER:         at 
org.apache.qpid.server.model.adapter.BrokerAdapter.changeState(BrokerAdapter.java:919)
BROKER:         at 
org.apache.qpid.server.model.adapter.BrokerAdapter.setState(BrokerAdapter.java:892)
BROKER:         at 
org.apache.qpid.server.model.adapter.AbstractAdapter.setDesiredState(AbstractAdapter.java:122)
BROKER:         at 
org.apache.qpid.server.configuration.updater.ChangeStateTask.call(ChangeStateTask.java:59)
BROKER:         at 
org.apache.qpid.server.configuration.updater.ChangeStateTask.call(ChangeStateTask.java:28)
BROKER:         at 
org.apache.qpid.server.configuration.updater.TaskExecutor.executeTask(TaskExecutor.java:213)
BROKER:         at 
org.apache.qpid.server.configuration.updater.TaskExecutor.access$200(TaskExecutor.java:46)
BROKER:         at 
org.apache.qpid.server.configuration.updater.TaskExecutor$CallableWrapper$1.run(TaskExecutor.java:252)
BROKER:         at java.security.AccessController.doPrivileged(Native Method)
BROKER:         at javax.security.auth.Subject.doAs(Subject.java:396)
BROKER:         at 
org.apache.qpid.server.configuration.updater.TaskExecutor$CallableWrapper.call(TaskExecutor.java:247)
BROKER:         at 
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
BROKER:         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
BROKER:         at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
BROKER:         at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
BROKER:         at java.lang.Thread.run(Thread.java:662)
{noformat}




--
This message was sent by Atlassian JIRA
(v6.1#6144)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to