You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "senthil.arumugam" <se...@gmail.com> on 2013/12/22 12:53:26 UTC
MQ broker crash
Hi,
We are using ActiveMQ 5.5.1 and recently the broker crashed. It failed to
restart until we cleared all the data files.
Any help to understand the rootcause or workaround to handle this issue ?
Below are the exceptions noticed in activemq.log,
2013-12-21 20:33:16,207 | ERROR | KahaDB failed to store to Journal |
org.apache.activemq.store.kahadb.MessageDatabase |
ConcurrentQueueStoreAndDispatch
java.io.EOFException: Chunk stream does not exist at page: 9449
at
org.apache.kahadb.page.Transaction$2.readPage(Transaction.java:454)
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.put(BTreeNode.java:368)
at org.apache.kahadb.index.BTreeIndex.put(BTreeIndex.java:189)
at
org.apache.activemq.store.kahadb.MessageDatabase.upadateIndex(MessageDatabase.java:993)
at
org.apache.activemq.store.kahadb.MessageDatabase$14.execute(MessageDatabase.java:872)
at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
at
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:870)
at
org.apache.activemq.store.kahadb.MessageDatabase$13.visit(MessageDatabase.java:828)
at
org.apache.activemq.store.kahadb.data.KahaAddMessageCommand.visit(KahaAddMessageCommand.java:241)
at
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:825)
at
org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:751)
at
org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.addMessage(KahaDBStore.java:366)
at
org.apache.activemq.store.kahadb.KahaDBStore$StoreQueueTask.run(KahaDBStore.java:1123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
2013-12-21 20:33:15,897 | WARN | Async error occurred:
java.lang.ClassCastException: java.lang.Long cannot be cast to
java.lang.String | org.apache.activemq.broker.TransportConnection.Service |
ActiveMQ Transport: tcp:///10.128.24.198:5
4154
java.lang.ClassCastException: java.lang.Long cannot be cast to
java.lang.String
at
org.apache.kahadb.util.StringMarshaller.writePayload(StringMarshaller.java:28)
at
org.apache.kahadb.index.BTreeNode$Marshaller.writePayload(BTreeNode.java:163)
at
org.apache.kahadb.index.BTreeNode$Marshaller.writePayload(BTreeNode.java:147)
at org.apache.kahadb.page.Transaction.store(Transaction.java:249)
at org.apache.kahadb.index.BTreeIndex.storeNode(BTreeIndex.java:289)
at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:316)
at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:287)
at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:287)
at org.apache.kahadb.index.BTreeIndex.remove(BTreeIndex.java:194)
at
org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:1029)
at
org.apache.activemq.store.kahadb.MessageDatabase$15.execute(MessageDatabase.java:890)
at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
at
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:888)
at
org.apache.activemq.store.kahadb.MessageDatabase$13.visit(MessageDatabase.java:833)
at
org.apache.activemq.store.kahadb.data.KahaRemoveMessageCommand.visit(KahaRemoveMessageCommand.java:220)
at
org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:825)
at
org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:751)
at
org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.removeMessage(KahaDBStore.java:378)
at
org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.removeAsyncMessage(KahaDBStore.java:350)
at
org.apache.activemq.store.kahadb.KahaDBTransactionStore.removeAsyncMessage(KahaDBTransactionStore.java:457)
at
org.apache.activemq.store.kahadb.KahaDBTransactionStore$1.removeAsyncMessage(KahaDBTransactionStore.java:171)
at
org.apache.activemq.broker.region.Queue.acknowledge(Queue.java:800)
at
org.apache.activemq.broker.region.Queue.removeMessage(Queue.java:1530)
at
org.apache.activemq.broker.region.QueueSubscription.acknowledge(QueueSubscription.java:59)
at
org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:253)
at
org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:383)
at
org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:546)
at
org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:78)
at
org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:78)
at
org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:197)
at
org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:87)
at
org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:468)
at org.apache.activemq.command.MessageAck.visit(MessageAck.java:214)
at
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:310)
at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:184)
at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
at
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
at
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:227)
at
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
at
org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)
at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)
at java.lang.Thread.run(Thread.java:619)
--
View this message in context: http://activemq.2283324.n4.nabble.com/MQ-broker-crash-tp4675798.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: MQ broker crash
Posted by Christian Posta <ch...@gmail.com>.
Did you have any corruption of kahadb files outside of the broker?
On Sun, Dec 22, 2013 at 4:53 AM, senthil.arumugam
<se...@gmail.com> wrote:
> Hi,
>
> We are using ActiveMQ 5.5.1 and recently the broker crashed. It failed to
> restart until we cleared all the data files.
>
> Any help to understand the rootcause or workaround to handle this issue ?
>
>
> Below are the exceptions noticed in activemq.log,
>
> 2013-12-21 20:33:16,207 | ERROR | KahaDB failed to store to Journal |
> org.apache.activemq.store.kahadb.MessageDatabase |
> ConcurrentQueueStoreAndDispatch
> java.io.EOFException: Chunk stream does not exist at page: 9449
> at
> org.apache.kahadb.page.Transaction$2.readPage(Transaction.java:454)
> 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.put(BTreeNode.java:368)
> at org.apache.kahadb.index.BTreeIndex.put(BTreeIndex.java:189)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.upadateIndex(MessageDatabase.java:993)
> at
> org.apache.activemq.store.kahadb.MessageDatabase$14.execute(MessageDatabase.java:872)
> at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:870)
> at
> org.apache.activemq.store.kahadb.MessageDatabase$13.visit(MessageDatabase.java:828)
> at
> org.apache.activemq.store.kahadb.data.KahaAddMessageCommand.visit(KahaAddMessageCommand.java:241)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:825)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:751)
> at
> org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.addMessage(KahaDBStore.java:366)
> at
> org.apache.activemq.store.kahadb.KahaDBStore$StoreQueueTask.run(KahaDBStore.java:1123)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
>
>
> 2013-12-21 20:33:15,897 | WARN | Async error occurred:
> java.lang.ClassCastException: java.lang.Long cannot be cast to
> java.lang.String | org.apache.activemq.broker.TransportConnection.Service |
> ActiveMQ Transport: tcp:///10.128.24.198:5
> 4154
> java.lang.ClassCastException: java.lang.Long cannot be cast to
> java.lang.String
> at
> org.apache.kahadb.util.StringMarshaller.writePayload(StringMarshaller.java:28)
> at
> org.apache.kahadb.index.BTreeNode$Marshaller.writePayload(BTreeNode.java:163)
> at
> org.apache.kahadb.index.BTreeNode$Marshaller.writePayload(BTreeNode.java:147)
> at org.apache.kahadb.page.Transaction.store(Transaction.java:249)
> at org.apache.kahadb.index.BTreeIndex.storeNode(BTreeIndex.java:289)
> at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:316)
> at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:287)
> at org.apache.kahadb.index.BTreeNode.remove(BTreeNode.java:287)
> at org.apache.kahadb.index.BTreeIndex.remove(BTreeIndex.java:194)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:1029)
> at
> org.apache.activemq.store.kahadb.MessageDatabase$15.execute(MessageDatabase.java:890)
> at org.apache.kahadb.page.Transaction.execute(Transaction.java:728)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:888)
> at
> org.apache.activemq.store.kahadb.MessageDatabase$13.visit(MessageDatabase.java:833)
> at
> org.apache.activemq.store.kahadb.data.KahaRemoveMessageCommand.visit(KahaRemoveMessageCommand.java:220)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.process(MessageDatabase.java:825)
> at
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:751)
> at
> org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.removeMessage(KahaDBStore.java:378)
> at
> org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.removeAsyncMessage(KahaDBStore.java:350)
> at
> org.apache.activemq.store.kahadb.KahaDBTransactionStore.removeAsyncMessage(KahaDBTransactionStore.java:457)
> at
> org.apache.activemq.store.kahadb.KahaDBTransactionStore$1.removeAsyncMessage(KahaDBTransactionStore.java:171)
> at
> org.apache.activemq.broker.region.Queue.acknowledge(Queue.java:800)
> at
> org.apache.activemq.broker.region.Queue.removeMessage(Queue.java:1530)
> at
> org.apache.activemq.broker.region.QueueSubscription.acknowledge(QueueSubscription.java:59)
> at
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:253)
> at
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:383)
> at
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:546)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:78)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:78)
> at
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:197)
> at
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:87)
> at
> org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:468)
> at org.apache.activemq.command.MessageAck.visit(MessageAck.java:214)
> at
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:310)
> at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:184)
> at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
> at
> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:227)
> at
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
> at
> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)
> at java.lang.Thread.run(Thread.java:619)
>
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/MQ-broker-crash-tp4675798.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
--
Christian Posta
http://www.christianposta.com/blog
twitter: @christianposta