[ https://issues.apache.org/activemq/browse/AMQ-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gary Tully resolved AMQ-2757. ----------------------------- Resolution: Fixed > AMQ startup fails during Startup due to NullPointerException in KahaDB > ---------------------------------------------------------------------- > > Key: AMQ-2757 > URL: https://issues.apache.org/activemq/browse/AMQ-2757 > Project: ActiveMQ > Issue Type: Bug > Components: Message Store > Affects Versions: 5.2.0, 5.3.0, 5.3.1 > Environment: Red Hat Enterprise Linux, Kernel V2.6.18 > Reporter: Thomas Schöftner > Assignee: Gary Tully > Fix For: 5.4.0 > > Attachments: activemq.log, activemq.xml, wrapper.conf, wrapper.log > > > During a long-time test run several message consumers listening to peristent > queues crashed. > The queues were filling up rapidly, so that KahaDB allocated 3GB of disk > space (max. limit 10GB) after 5hours (approx 800k messages). > At that point the broker was extremely slow and non-responsive to new > messages. > JConsole showed that 1GB of RAM was used and most effort was necessary for > garbage collection. > Although the max memory usage limit is configured to 1GB, AMQ should rather > allocate disc space for messages to queues without containers. > AMQ shutdown took extremely long (several limits). > The subsequent AMQ restart keeps failing with the following exception: > java.lang.NullPointerException > at > org.apache.kahadb.index.BTreeNode$BTreeIterator.findNextPage(BTreeNode.java:109) > at > org.apache.kahadb.index.BTreeNode$BTreeIterator.hasNext(BTreeNode.java:120) > at > org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$4.execute(KahaDBStore.java:223) > at org.apache.kahadb.page.Transaction.execute(Transaction.java:728) > at > org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.recover(KahaDBStore.java:220) > at org.apache.activemq.broker.region.Queue.initialize(Queue.java:252) > at > org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:83) > at > org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:464) > at > org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56) > at > org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:120) > at > org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:268) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:142) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:142) > at > org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:149) > at > org.apache.activemq.broker.region.AbstractRegion.start(AbstractRegion.java:94) > at > org.apache.activemq.broker.region.RegionBroker.start(RegionBroker.java:178) > at > org.apache.activemq.broker.jmx.ManagedRegionBroker.start(ManagedRegionBroker.java:101) > at org.apache.activemq.broker.BrokerFilter.start(BrokerFilter.java:154) > at > org.apache.activemq.broker.TransactionBroker.start(TransactionBroker.java:112) > at > org.apache.activemq.broker.BrokerService$3.start(BrokerService.java:1713) > at > org.apache.activemq.broker.BrokerService.start(BrokerService.java:473) > at > org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:85) > 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) > ... > The problem is reproducible also reproducible with recent nightly builds of > AMQ/Fuse 5.4.0. > -Tom -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.