Hi Matthew-
A negative seek offset sounds like a bug. I'd suggest creating a
ticket, and if you can attach the contents of the kahadb/ folder, that
would be helpful. Are you doing anything other than just simple
queues? Transactions, Durable Topics, Expiration, Message Groups, etc?
Matt Pavlovich
On 1/24/12 8:09 PM, mkubicina wrote:
Hello,
We're having consistent issues with ActiveMQ 5.5.1 under high load. ActiveMQ
still receives messages for a particular queue, but consumers stop receiving
messages. The web console also shows not messages in the queue. It appears
that ActiveMQ is unable to page in more data from disk. The full exception
is below.
Any ideas on how best to resolve this issue?
Exception:
2012-01-24 11:43:52,197 | ERROR | QueueStorePrefetch1828257231 - Failed to
fill batch | org.apache.activemq.broker.region.cursors.AbstractStoreCursor |
Queue:XXX
java.io.IOException: Negative seek offset
at java.io.RandomAccessFile.seek(Native Method)
at org.apache.kahadb.page.PageFile.readPage(PageFile.java:778)
at org.apache.kahadb.page.Transaction$2.readPage(Transaction.java:440)
at org.apache.kahadb.page.Transaction$2.<init>(Transaction.java:431)
at
org.apache.kahadb.page.Transaction.openInputStream(Transaction.java:428)
at org.apache.kahadb.page.Transaction.load(Transaction.java:404)
at org.apache.kahadb.page.Transaction.load(Transaction.java:361)
at org.apache.kahadb.index.BTreeIndex.loadNode(BTreeIndex.java:262)
at org.apache.kahadb.index.BTreeNode.getChild(BTreeNode.java:225)
at org.apache.kahadb.index.BTreeNode.getLeafNode(BTreeNode.java:672)
at org.apache.kahadb.index.BTreeNode.iterator(BTreeNode.java:635)
at org.apache.kahadb.index.BTreeIndex.iterator(BTreeIndex.java:232)
at
org.apache.activemq.store.kahadb.MessageDatabase$MessageOrderIndex$MessageOrderIterator.<init>(MessageDatabase.java:2324)
at
org.apache.activemq.store.kahadb.MessageDatabase$MessageOrderIndex.iterator(MessageDatabase.java:2304)
at
org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$5.execute(KahaDBStore.java:490)
at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
at
org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.recoverNextMessages(KahaDBStore.java:485)
at
org.apache.activemq.store.ProxyMessageStore.recoverNextMessages(ProxyMessageStore.java:88)
at
org.apache.activemq.broker.region.cursors.QueueStorePrefetch.doFillBatch(QueueStorePrefetch.java:97)
at
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:260)
at
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:108)
at
org.apache.activemq.broker.region.cursors.StoreQueueCursor.reset(StoreQueueCursor.java:157)
at
org.apache.activemq.broker.region.Queue.doPageInForDispatch(Queue.java:1712)
at
org.apache.activemq.broker.region.Queue.pageInMessages(Queue.java:1932)
at org.apache.activemq.broker.region.Queue.iterate(Queue.java:1440)
at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:104)
at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:42)
--
View this message in context:
http://activemq.2283324.n4.nabble.com/Failed-to-fill-batch-tp4326152p4326152.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.