activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Miller <z2amil...@gmail.com>
Subject IndexOutOfBoundsException in AMQMessageStore using 20071028.173739
Date Thu, 01 Nov 2007 21:47:16 GMT

We've been using ActiveMQ in an infrastructure refresh project, and have run
into a nasty looking bug, it looks like we are dropping messages.    We have
a few fast producers that will produce approximately 4-5 million persistent
messages over the course of about 2.5 hours, while many slower consumers
will consume these messages over the course of a day or so.

We are using Jencks/Spring for the producers and consumers, using the
openwire protocol.  For this test, we were using the AMQ 4.1.1 client jars,
if that matters.  (We will try updating to the new AMQ5 client jars today)

About halfway through the production run, we started getting
IndexOutOfBounds exceptions in the log pretty frequently.  Later on the
consumer tries to get these messages but appears to fail.

The exception:

INFO   | jvm 1    | 2007/10/31 22:45:41 | WARN  AMQMessageStore               
- Message could not be added to long term store: Index: 139, Size: 90
INFO   | jvm 1    | 2007/10/31 22:45:41 |
java.lang.IndexOutOfBoundsException: Index: 139, Size: 90
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
java.util.ArrayList.add(ArrayList.java:368)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.index.hash.HashPage.addHashEntry(HashPage.java:195)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.index.hash.HashPageInfo.addHashEntry(HashPageInfo.j
ava:67)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.index.hash.HashBin.addHashEntry(HashBin.java:186)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.index.hash.HashBin.put(HashBin.java:149)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.index.hash.HashIndex.store(HashIndex.java:234)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.kaha.impl.container.MapContainerImpl.put(MapContainerImpl.jav
a:296)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.store.kahadaptor.KahaReferenceStore.addMessageReference(KahaR
eferenceStore.java:113)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.store.amq.AMQMessageStore$4.execute(AMQMessageStore.java:341)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.util.TransactionTemplate.run(TransactionTemplate.java:44)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.store.amq.AMQMessageStore.doAsyncWrite(AMQMessageStore.java:3
30)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.store.amq.AMQMessageStore.asyncWrite(AMQMessageStore.java:300
)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.store.amq.AMQMessageStore$1.iterate(AMQMessageStore.java:92)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:9
8)
INFO   | jvm 1    | 2007/10/31 22:45:41 |       at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)

The client error:
2007-11-01 14:32:31,478 [Queue  IG      ] ERROR RecoveryListenerAdapter       
- Message id ID:rlab-0015.riya.com-38211-1193877195876-0:4:81:1:694 could
not be recovered from the data store

Any ideas, does this ring a bell for anyone?  We did not see this error in
our earlier test runs, which was using a snapshot from 20071002.

We plan on updating to the latest snapshot today, as well as using the 5.0
client jars, and rerunning the test, I will let you know if that fixes the
error for us.

Thanks!
-Andy


-- 
View this message in context: http://www.nabble.com/IndexOutOfBoundsException-in-AMQMessageStore-using-20071028.173739-tf4734264s2354.html#a13538049
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.


Mime
View raw message