NullPointer in MessageDatabase.java on restarting after ungraceful exit
-----------------------------------------------------------------------

                 Key: AMQ-2589
                 URL: https://issues.apache.org/activemq/browse/AMQ-2589
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.3.0
         Environment: 5.3.0.x
            Reporter: Dave Stanley


If I kill -9 the broker when the broker is heavily loaded with transactional 
consumers I see the following error when I try and restart the broker.


INFO  ManagementContext              - JMX consoles can connect to 
service:jmx:rmi:///jndi/rmi://localhost:2010/jmxrmi
INFO  BrokerService                  - Using Persistence Adapter: 
org.apache.activemq.store.kahadb.kahadbpersistenceadap...@4f3ba2
ERROR BrokerService                  - Failed to start ActiveMQ JMS Message 
Broker. Reason: java.lang.NullPointerException
java.lang.NullPointerException
        at 
org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:876)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.access$700(MessageDatabase.java:82)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$RemoveOpperation.execute(MessageDatabase.java:1395)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$16.execute(MessageDatabase.java:800)
        at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:797)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$11.visit(MessageDatabase.java:710)
        at 
org.apache.activemq.store.kahadb.data.KahaCommitCommand.visit(KahaCommitCommand.java:130)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:692)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.recover(MessageDatabase.java:393)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.open(MessageDatabase.java:280)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:321)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.start(MessageDatabase.java:182)
        at 
org.apache.activemq.store.kahadb.KahaDBPersistenceAdapter.start(KahaDBPersistenceAdapter.java:183)
        at 
org.apache.activemq.broker.BrokerService.start(BrokerService.java:456)
        at 
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:61)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
        at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
        at 
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
        at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:96)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:52)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
        at 
org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
        at 
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:136)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:82)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
        at org.apache.activemq.console.Main.main(Main.java:107)
INFO  BrokerService                  - ActiveMQ Message Broker (adcmq-INT, 
null) is shutting down
INFO  TransportConnector             - Connector openwire Stopped
INFO  TransportConnector             - Connector ssl Stopped
INFO  BrokerService                  - ActiveMQ JMS Message Broker (adcmq-INT, 
null) stopped
ERROR: java.lang.RuntimeException: Failed to execute start task. Reason: 
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'org.apache.activemq.xbean.XBeanBrokerService#0' defined in class 
path resource [activemq.xml]: Invocation of init method failed; nested 
exception is java.lang.NullPointerException
java.lang.RuntimeException: Failed to execute start task. Reason: 
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'org.apache.activemq.xbean.XBeanBrokerService#0' defined in class 
path resource [activemq.xml]: Invocation of init method failed; nested 
exception is java.lang.NullPointerException
        at 
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:98)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:136)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:82)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
        at org.apache.activemq.console.Main.main(Main.java:107)
Caused by: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'org.apache.activemq.xbean.XBeanBrokerService#0' 
defined in class path resource [activemq.xml]: Invocation of init method 
failed; nested exception is java.lang.NullPointerException
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
        at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
        at 
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
        at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:96)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:52)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
        at 
org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
        at 
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
        ... 10 more
Caused by: java.lang.NullPointerException
        at 
org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:876)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.access$700(MessageDatabase.java:82)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$RemoveOpperation.execute(MessageDatabase.java:1395)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$16.execute(MessageDatabase.java:800)
        at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:797)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$11.visit(MessageDatabase.java:710)
        at 
org.apache.activemq.store.kahadb.data.KahaCommitCommand.visit(KahaCommitCommand.java:130)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:692)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.recover(MessageDatabase.java:393)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.open(MessageDatabase.java:280)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:321)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.start(MessageDatabase.java:182)
        at 
org.apache.activemq.store.kahadb.KahaDBPersistenceAdapter.start(KahaDBPersistenceAdapter.java:183)
        at 
org.apache.activemq.broker.BrokerService.start(BrokerService.java:456)
        at 
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:61)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
        ... 30 more
ERROR: java.lang.Exception: 
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'org.apache.activemq.xbean.XBeanBrokerService#0' defined in class 
path resource [activemq.xml]: Invocation of init method failed; nested 
exception is java.lang.NullPointerException
java.lang.Exception: org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'org.apache.activemq.xbean.XBeanBrokerService#0' 
defined in class path resource [activemq.xml]: Invocation of init method 
failed; nested exception is java.lang.NullPointerException
        at 
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:99)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:136)
        at 
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
        at 
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:82)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
        at org.apache.activemq.console.Main.main(Main.java:107)
Caused by: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'org.apache.activemq.xbean.XBeanBrokerService#0' 
defined in class path resource [activemq.xml]: Invocation of init method 
failed; nested exception is java.lang.NullPointerException
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
        at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
        at 
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
        at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
        at 
org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:96)
        at 
org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:52)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
        at 
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
        at 
org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
        at 
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
        ... 10 more
Caused by: java.lang.NullPointerException
        at 
org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:876)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.access$700(MessageDatabase.java:82)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$RemoveOpperation.execute(MessageDatabase.java:1395)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$16.execute(MessageDatabase.java:800)
        at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:797)
        at 
org.apache.activemq.store.kahadb.MessageDatabase$11.visit(MessageDatabase.java:710)
        at 
org.apache.activemq.store.kahadb.data.KahaCommitCommand.visit(KahaCommitCommand.java:130)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:692)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.recover(MessageDatabase.java:393)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.open(MessageDatabase.java:280)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:321)
        at 
org.apache.activemq.store.kahadb.MessageDatabase.start(MessageDatabase.java:182)
        at 
org.apache.activemq.store.kahadb.KahaDBPersistenceAdapter.start(KahaDBPersistenceAdapter.java:183)
        at 
org.apache.activemq.broker.BrokerService.start(BrokerService.java:456)
        at 
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:61)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
        ... 30 more


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to