activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <rajdav...@gmail.com>
Subject Re: Urgent java.lang.IndexOutOfBoundsException in ActiveMQ Kaha Storage - Data lost?
Date Thu, 17 Jul 2008 08:06:13 GMT
This looks a bug  fixed in trunk - either get 5.2-SNAPSHOT - here: http://people.apache.org/repo/m2-snapshot-repository/org/apache/activemq/apache-activemq/5.2-SNAPSHOT/
or if you do want to use a snapshot - use a FUSE release - here: http://open.iona.com/downloads/

cheers,

Rob

On 17 Jul 2008, at 08:26, qbeukes wrote:

>
> that would help wouldn't it. Appologies. I don't know why I missed  
> this part.
>
> I tried both of these with the same data directory (the newer one  
> downloaded
> after this happens)
> apache-activemq-5.0.0  apache-activemq-5.1.0
>
> Then, it runs on:
> video opt # ls -ld /etc/make.profile
> lrwxrwxrwx 1 root root 46 Jan 15  2008 /etc/make.profile ->
> /usr/portage/profiles/default-linux/x86/2006.1
> video opt # cat /proc/version
> Linux version 2.6.19-gentoo-r5 (root@livecd) (gcc version 4.1.1  
> (Gentoo
> 4.1.1-r3)) #2 SMP Thu Jan 17 08:31:04 SAST 2008
> video opt # cat /etc/gentoo-release
> Gentoo Base System release 1.12.9
>
> That's it.
> Q
>
>
> rajdavies wrote:
>>
>> which version ?
>> On 17 Jul 2008, at 08:05, qbeukes wrote:
>>
>>>
>>> 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--tp18502722p18502722.html
>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/Urgent-java.lang.IndexOutOfBoundsException-in-ActiveMQ-Kaha-Storage---Data-lost--tp18502722p18503026.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>


Mime
View raw message