activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From qbeukes <qbeu...@add.za.net>
Subject Urgent java.lang.IndexOutOfBoundsException in ActiveMQ Kaha Storage - Data lost?
Date Wed, 16 Jul 2008 07:22:30 GMT

Hey,

Our queues usually grow much faster than the database can accept data from
the consumer, so they tend to be very large. I'm not sure if this has
anything to do with it.

But the service stopped responding (queue just kept growing, and consumer
wasn't reading any data).

So I killed ActiveMQ. Now when I start it I am getting:
WARN  AMQMessageStore                - Could not replay add for message
'ID:video.junkmail.co.za-57456-1211989603249-0:3521147:1:1:1'.  Message may
have already been added. reason: java.lang.IndexOutOfBoundsException: Index:
2, Size: 2
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
        at java.util.ArrayList.RangeCheck(ArrayList.java:547)
        at java.util.ArrayList.get(ArrayList.java:322)
        at
org.apache.activemq.kaha.impl.index.hash.HashBin.addHashEntry(HashBin.java:209)
        at
org.apache.activemq.kaha.impl.index.hash.HashBin.put(HashBin.java:149)
        at
org.apache.activemq.kaha.impl.index.hash.HashIndex.store(HashIndex.java:241)
        at
org.apache.activemq.kaha.impl.container.MapContainerImpl.put(MapContainerImpl.java:304)
        at
org.apache.activemq.store.kahadaptor.KahaReferenceStore.addMessageReference(KahaReferenceStore.java:118)
        at
org.apache.activemq.store.amq.AMQMessageStore.replayAddMessage(AMQMessageStore.java:173)
        at
org.apache.activemq.store.amq.AMQPersistenceAdapter.recover(AMQPersistenceAdapter.java:495)
        at
org.apache.activemq.store.amq.AMQPersistenceAdapter.start(AMQPersistenceAdapter.java:212)
        at
org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:1448)
        at
org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:1400)
        at
org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:513)
        at
org.apache.activemq.broker.BrokerService.start(BrokerService.java:422)
        at
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:46)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1201)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1171)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:425)
        at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
        at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:287)
        at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
        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:91)
        at
org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:51)
        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:112)
        at
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
        at
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:51)
        at
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:104)
        at
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:51)
        at
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:76)
        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:222)
        at org.apache.activemq.console.Main.main(Main.java:106)

This happens while trying to restore the store. After that new messages
give:
WARN  AMQMessageStore                - Message could not be added to long
term store: Index: 2, Size: 2
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
        at java.util.ArrayList.RangeCheck(ArrayList.java:547)
        at java.util.ArrayList.get(ArrayList.java:322)
        at
org.apache.activemq.kaha.impl.index.hash.HashBin.addHashEntry(HashBin.java:209)
        at
org.apache.activemq.kaha.impl.index.hash.HashBin.put(HashBin.java:149)
        at
org.apache.activemq.kaha.impl.index.hash.HashIndex.store(HashIndex.java:241)
        at
org.apache.activemq.kaha.impl.container.MapContainerImpl.put(MapContainerImpl.java:304)
        at
org.apache.activemq.store.kahadaptor.KahaReferenceStore.addMessageReference(KahaReferenceStore.java:118)
        at
org.apache.activemq.store.amq.AMQMessageStore$4.execute(AMQMessageStore.java:341)
        at
org.apache.activemq.util.TransactionTemplate.run(TransactionTemplate.java:44)
        at
org.apache.activemq.store.amq.AMQMessageStore.doAsyncWrite(AMQMessageStore.java:330)
        at
org.apache.activemq.store.amq.AMQMessageStore.asyncWrite(AMQMessageStore.java:300)
        at
org.apache.activemq.store.amq.AMQMessageStore$1.iterate(AMQMessageStore.java:92)
        at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
        at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)

Can someone please advice.
-- 
View this message in context: http://www.nabble.com/Urgent-java.lang.IndexOutOfBoundsException-in-ActiveMQ-Kaha-Storage---Data-lost--tp18481653p18481653.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message