You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Susan Javurek (JIRA)" <ji...@apache.org> on 2011/02/24 18:24:38 UTC

[jira] Commented: (AMQ-3098) Failed to page in more queue messages - Cannot consume messages

    [ https://issues.apache.org/jira/browse/AMQ-3098?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12998945#comment-12998945 ] 

Susan Javurek commented on AMQ-3098:
------------------------------------

Hi, 

Another user had this same strack trace. He reproduced the issue by simulating by hot mounting / unmounting his NFS file system on which you have KahaDb datas. I don't have NFS handy to test with, however, his broker didn't shut down in this situation as he had an exceptionHandler configured to ignoreAllErrors. As such, the broker continued on but the database was gone / corrupt. A restart is required and a re-build of the indexes.  

I don't know if this helps you or not Loc, but I thought I'd post it. 

Susan

> Failed to page in more queue messages - Cannot consume messages
> ---------------------------------------------------------------
>
>                 Key: AMQ-3098
>                 URL: https://issues.apache.org/jira/browse/AMQ-3098
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.4.2
>            Reporter: Loc Truong
>            Priority: Critical
>
> With the error messages below, Consumers cannot consume any message until clearing the data folder then restart ActiveMQ, assuming old messages are lost.
> ERROR | Failed to fill batch
> java.lang.RuntimeException: java.io.IOException: Invalid location: 1711:34233, : java.lang.NegativeArraySizeException
>         at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:265)
>         at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:110)
>         at org.apache.activemq.broker.region.cursors.StoreQueueCursor.reset(StoreQueueCursor.java:157)
>         at org.apache.activemq.broker.region.Queue.doPageIn(Queue.java:1678)
>         at org.apache.activemq.broker.region.Queue.pageInMessages(Queue.java:1898)
>         at org.apache.activemq.broker.region.Queue.iterate(Queue.java:1425)
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
> Caused by: java.io.IOException: Invalid location: 1711:34233, : java.lang.NegativeArraySizeException
>         at org.apache.kahadb.journal.DataFileAccessor.readRecord(DataFileAccessor.java:94)
>         at org.apache.kahadb.journal.Journal.read(Journal.java:596)
>         at org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:786)
>         at org.apache.activemq.store.kahadb.KahaDBStore.loadMessage(KahaDBStore.java:956)
>         at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$5.execute(KahaDBStore.java:494)
>         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:262)
>         ... 7 more
> ERROR | Failed to page in more queue messages
> java.lang.RuntimeException: java.lang.RuntimeException: java.io.IOException: Invalid location: 1711:34233, : java.lang.NegativeArraySizeException
>         at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:113)
>         at org.apache.activemq.broker.region.cursors.StoreQueueCursor.reset(StoreQueueCursor.java:157)
>         at org.apache.activemq.broker.region.Queue.doPageIn(Queue.java:1678)
>         at org.apache.activemq.broker.region.Queue.pageInMessages(Queue.java:1898)
>         at org.apache.activemq.broker.region.Queue.iterate(Queue.java:1425)
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
> Caused by: java.lang.RuntimeException: java.io.IOException: Invalid location: 1711:34233, : java.lang.NegativeArraySizeException
>         at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:265)
>         at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:110)
>         ... 6 more
> Caused by: java.io.IOException: Invalid location: 1711:34233, : java.lang.NegativeArraySizeException
>         at org.apache.kahadb.journal.DataFileAccessor.readRecord(DataFileAccessor.java:94)
>         at org.apache.kahadb.journal.Journal.read(Journal.java:596)
>         at org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:786)
>         at org.apache.activemq.store.kahadb.KahaDBStore.loadMessage(KahaDBStore.java:956)
>         at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$5.execute(KahaDBStore.java:494)
>         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:262)
>         ... 7 more

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira