You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2011/08/23 15:26:29 UTC

[jira] [Created] (AMQ-3466) IndexOutOfBounds in kahadb with large number of subscriptions and pending messages

IndexOutOfBounds in kahadb with large number of subscriptions and pending messages
----------------------------------------------------------------------------------

                 Key: AMQ-3466
                 URL: https://issues.apache.org/jira/browse/AMQ-3466
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.5.0
            Reporter: Timothy Bish
            Assignee: Gary Tully
             Fix For: 5.6.0


When there are several durable subscribers each with a large number of pending messages to be acked the an error occurs, as well as some others involving ArrayIndexOutOfBoundsExceptions and NullPointerExceptions while reading or writing the chunk stream.

{noformat}
javax.jms.JMSException: STORE COMMIT FAILED: Transaction rolled back.
	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1287)
	at org.apache.activemq.TransactionContext.syncSendPacketWithInterruptionHandling(TransactionContext.java:704)
	at org.apache.activemq.TransactionContext.commit(TransactionContext.java:299)
	at org.apache.activemq.ActiveMQSession.commit(ActiveMQSession.java:560)
	at org.apache.activemq.process.TopicWithManySelectorsTest.sendNotification(TopicWithManySelectorsTest.java:126)
	at org.apache.activemq.process.TopicWithManySelectorsTest.test(TopicWithManySelectorsTest.java:85)
	at org.apache.activemq.process.TopicWithManySelectorsTest.testMass(TopicWithManySelectorsTest.java:42)
	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 junit.framework.TestCase.runTest(TestCase.java:168)
	at junit.framework.TestCase.runBare(TestCase.java:134)
	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:90)
	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:96)
	at junit.framework.TestResult$1.protect(TestResult.java:110)
	at junit.framework.TestResult.runProtected(TestResult.java:128)
	at junit.framework.TestResult.run(TestResult.java:113)
	at junit.framework.TestCase.run(TestCase.java:124)
	at junit.framework.TestSuite.runTest(TestSuite.java:232)
	at junit.framework.TestSuite.run(TestSuite.java:227)
	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:94)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:196)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
Caused by: javax.transaction.xa.XAException: STORE COMMIT FAILED: Transaction rolled back.
	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:77)
	at org.apache.activemq.broker.TransactionBroker.commitTransaction(TransactionBroker.java:173)
	at org.apache.activemq.broker.MutableBrokerFilter.commitTransaction(MutableBrokerFilter.java:103)
	at org.apache.activemq.broker.TransportConnection.processCommitTransactionOnePhase(TransportConnection.java:424)
	at org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:100)
	at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:311)
	at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185)
	at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
	at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
	at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:219)
	at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
	at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
	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:680)
Caused by: javax.transaction.xa.XAException: POST COMMIT FAILED
	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:182)
	at org.apache.activemq.transaction.Transaction$2.call(Transaction.java:54)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:768)
	at org.apache.activemq.store.kahadb.KahaDBTransactionStore.commit(KahaDBTransactionStore.java:264)
	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:72)
	... 14 more
Caused by: java.lang.ArrayIndexOutOfBoundsException
	at java.lang.System.arraycopy(Native Method)
	at org.apache.kahadb.page.Transaction$2.read(Transaction.java:494)
	at java.io.DataInputStream.readFully(DataInputStream.java:178)
	at java.io.DataInputStream.readFully(DataInputStream.java:152)
	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2352)
	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2335)
	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:201)
	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:147)
	at org.apache.kahadb.page.Transaction.load(Transaction.java:406)
	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.get(BTreeNode.java:558)
	at org.apache.kahadb.index.BTreeIndex.get(BTreeIndex.java:184)
	at org.apache.activemq.store.kahadb.MessageDatabase.removeAckLocation(MessageDatabase.java:1642)
	at org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:1051)
	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$KahaDBTopicMessageStore.doAcknowledge(KahaDBStore.java:650)
	at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBTopicMessageStore.acknowledge(KahaDBStore.java:637)
	at org.apache.activemq.store.ProxyTopicMessageStore.acknowledge(ProxyTopicMessageStore.java:78)
	at org.apache.activemq.broker.region.Topic.acknowledge(Topic.java:505)
	at org.apache.activemq.broker.region.DurableTopicSubscription.unmatched(DurableTopicSubscription.java:85)
	at org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:44)
	at org.apache.activemq.broker.region.Topic.dispatch(Topic.java:628)
	at org.apache.activemq.broker.region.Topic$4.afterCommit(Topic.java:466)
	at org.apache.activemq.transaction.Transaction.fireAfterCommit(Transaction.java:109)
	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:177)
	... 20 more
{noformat}


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

        

[jira] [Resolved] (AMQ-3466) IndexOutOfBounds in kahadb with large number of subscriptions and pending messages

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AMQ-3466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gary Tully resolved AMQ-3466.
-----------------------------

    Resolution: Fixed

fix in http://svn.apache.org/viewvc?rev=1160681&view=rev

> IndexOutOfBounds in kahadb with large number of subscriptions and pending messages
> ----------------------------------------------------------------------------------
>
>                 Key: AMQ-3466
>                 URL: https://issues.apache.org/jira/browse/AMQ-3466
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Timothy Bish
>            Assignee: Gary Tully
>             Fix For: 5.6.0
>
>
> When there are several durable subscribers each with a large number of pending messages to be acked the an error occurs, as well as some others involving ArrayIndexOutOfBoundsExceptions and NullPointerExceptions while reading or writing the chunk stream.
> {noformat}
> javax.jms.JMSException: STORE COMMIT FAILED: Transaction rolled back.
> 	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
> 	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1287)
> 	at org.apache.activemq.TransactionContext.syncSendPacketWithInterruptionHandling(TransactionContext.java:704)
> 	at org.apache.activemq.TransactionContext.commit(TransactionContext.java:299)
> 	at org.apache.activemq.ActiveMQSession.commit(ActiveMQSession.java:560)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.sendNotification(TopicWithManySelectorsTest.java:126)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.test(TopicWithManySelectorsTest.java:85)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.testMass(TopicWithManySelectorsTest.java:42)
> 	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 junit.framework.TestCase.runTest(TestCase.java:168)
> 	at junit.framework.TestCase.runBare(TestCase.java:134)
> 	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:90)
> 	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:96)
> 	at junit.framework.TestResult$1.protect(TestResult.java:110)
> 	at junit.framework.TestResult.runProtected(TestResult.java:128)
> 	at junit.framework.TestResult.run(TestResult.java:113)
> 	at junit.framework.TestCase.run(TestCase.java:124)
> 	at junit.framework.TestSuite.runTest(TestSuite.java:232)
> 	at junit.framework.TestSuite.run(TestSuite.java:227)
> 	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> 	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> 	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:94)
> 	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:196)
> 	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
> Caused by: javax.transaction.xa.XAException: STORE COMMIT FAILED: Transaction rolled back.
> 	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:77)
> 	at org.apache.activemq.broker.TransactionBroker.commitTransaction(TransactionBroker.java:173)
> 	at org.apache.activemq.broker.MutableBrokerFilter.commitTransaction(MutableBrokerFilter.java:103)
> 	at org.apache.activemq.broker.TransportConnection.processCommitTransactionOnePhase(TransportConnection.java:424)
> 	at org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:100)
> 	at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:311)
> 	at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185)
> 	at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
> 	at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
> 	at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:219)
> 	at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
> 	at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
> 	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:680)
> Caused by: javax.transaction.xa.XAException: POST COMMIT FAILED
> 	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:182)
> 	at org.apache.activemq.transaction.Transaction$2.call(Transaction.java:54)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:768)
> 	at org.apache.activemq.store.kahadb.KahaDBTransactionStore.commit(KahaDBTransactionStore.java:264)
> 	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:72)
> 	... 14 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> 	at java.lang.System.arraycopy(Native Method)
> 	at org.apache.kahadb.page.Transaction$2.read(Transaction.java:494)
> 	at java.io.DataInputStream.readFully(DataInputStream.java:178)
> 	at java.io.DataInputStream.readFully(DataInputStream.java:152)
> 	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2352)
> 	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2335)
> 	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:201)
> 	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:147)
> 	at org.apache.kahadb.page.Transaction.load(Transaction.java:406)
> 	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.get(BTreeNode.java:558)
> 	at org.apache.kahadb.index.BTreeIndex.get(BTreeIndex.java:184)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.removeAckLocation(MessageDatabase.java:1642)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:1051)
> 	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$KahaDBTopicMessageStore.doAcknowledge(KahaDBStore.java:650)
> 	at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBTopicMessageStore.acknowledge(KahaDBStore.java:637)
> 	at org.apache.activemq.store.ProxyTopicMessageStore.acknowledge(ProxyTopicMessageStore.java:78)
> 	at org.apache.activemq.broker.region.Topic.acknowledge(Topic.java:505)
> 	at org.apache.activemq.broker.region.DurableTopicSubscription.unmatched(DurableTopicSubscription.java:85)
> 	at org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:44)
> 	at org.apache.activemq.broker.region.Topic.dispatch(Topic.java:628)
> 	at org.apache.activemq.broker.region.Topic$4.afterCommit(Topic.java:466)
> 	at org.apache.activemq.transaction.Transaction.fireAfterCommit(Transaction.java:109)
> 	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:177)
> 	... 20 more
> {noformat}

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

        

[jira] [Commented] (AMQ-3466) IndexOutOfBounds in kahadb with large number of subscriptions and pending messages

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13089465#comment-13089465 ] 

Gary Tully commented on AMQ-3466:
---------------------------------

Workaround is to increase the pageSize for the index, such that large values do not overflow two pages.

> IndexOutOfBounds in kahadb with large number of subscriptions and pending messages
> ----------------------------------------------------------------------------------
>
>                 Key: AMQ-3466
>                 URL: https://issues.apache.org/jira/browse/AMQ-3466
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Timothy Bish
>            Assignee: Gary Tully
>             Fix For: 5.6.0
>
>
> When there are several durable subscribers each with a large number of pending messages to be acked the an error occurs, as well as some others involving ArrayIndexOutOfBoundsExceptions and NullPointerExceptions while reading or writing the chunk stream.
> {noformat}
> javax.jms.JMSException: STORE COMMIT FAILED: Transaction rolled back.
> 	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
> 	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1287)
> 	at org.apache.activemq.TransactionContext.syncSendPacketWithInterruptionHandling(TransactionContext.java:704)
> 	at org.apache.activemq.TransactionContext.commit(TransactionContext.java:299)
> 	at org.apache.activemq.ActiveMQSession.commit(ActiveMQSession.java:560)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.sendNotification(TopicWithManySelectorsTest.java:126)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.test(TopicWithManySelectorsTest.java:85)
> 	at org.apache.activemq.process.TopicWithManySelectorsTest.testMass(TopicWithManySelectorsTest.java:42)
> 	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 junit.framework.TestCase.runTest(TestCase.java:168)
> 	at junit.framework.TestCase.runBare(TestCase.java:134)
> 	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:90)
> 	at org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:96)
> 	at junit.framework.TestResult$1.protect(TestResult.java:110)
> 	at junit.framework.TestResult.runProtected(TestResult.java:128)
> 	at junit.framework.TestResult.run(TestResult.java:113)
> 	at junit.framework.TestCase.run(TestCase.java:124)
> 	at junit.framework.TestSuite.runTest(TestSuite.java:232)
> 	at junit.framework.TestSuite.run(TestSuite.java:227)
> 	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> 	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> 	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:94)
> 	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:196)
> 	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
> Caused by: javax.transaction.xa.XAException: STORE COMMIT FAILED: Transaction rolled back.
> 	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:77)
> 	at org.apache.activemq.broker.TransactionBroker.commitTransaction(TransactionBroker.java:173)
> 	at org.apache.activemq.broker.MutableBrokerFilter.commitTransaction(MutableBrokerFilter.java:103)
> 	at org.apache.activemq.broker.TransportConnection.processCommitTransactionOnePhase(TransportConnection.java:424)
> 	at org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:100)
> 	at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:311)
> 	at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185)
> 	at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
> 	at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
> 	at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:219)
> 	at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
> 	at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
> 	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:680)
> Caused by: javax.transaction.xa.XAException: POST COMMIT FAILED
> 	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:182)
> 	at org.apache.activemq.transaction.Transaction$2.call(Transaction.java:54)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:768)
> 	at org.apache.activemq.store.kahadb.KahaDBTransactionStore.commit(KahaDBTransactionStore.java:264)
> 	at org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:72)
> 	... 14 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> 	at java.lang.System.arraycopy(Native Method)
> 	at org.apache.kahadb.page.Transaction$2.read(Transaction.java:494)
> 	at java.io.DataInputStream.readFully(DataInputStream.java:178)
> 	at java.io.DataInputStream.readFully(DataInputStream.java:152)
> 	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2352)
> 	at org.apache.activemq.store.kahadb.MessageDatabase$HashSetStringMarshaller.readPayload(MessageDatabase.java:2335)
> 	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:201)
> 	at org.apache.kahadb.index.BTreeNode$Marshaller.readPayload(BTreeNode.java:147)
> 	at org.apache.kahadb.page.Transaction.load(Transaction.java:406)
> 	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.get(BTreeNode.java:558)
> 	at org.apache.kahadb.index.BTreeIndex.get(BTreeIndex.java:184)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.removeAckLocation(MessageDatabase.java:1642)
> 	at org.apache.activemq.store.kahadb.MessageDatabase.updateIndex(MessageDatabase.java:1051)
> 	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$KahaDBTopicMessageStore.doAcknowledge(KahaDBStore.java:650)
> 	at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBTopicMessageStore.acknowledge(KahaDBStore.java:637)
> 	at org.apache.activemq.store.ProxyTopicMessageStore.acknowledge(ProxyTopicMessageStore.java:78)
> 	at org.apache.activemq.broker.region.Topic.acknowledge(Topic.java:505)
> 	at org.apache.activemq.broker.region.DurableTopicSubscription.unmatched(DurableTopicSubscription.java:85)
> 	at org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:44)
> 	at org.apache.activemq.broker.region.Topic.dispatch(Topic.java:628)
> 	at org.apache.activemq.broker.region.Topic$4.afterCommit(Topic.java:466)
> 	at org.apache.activemq.transaction.Transaction.fireAfterCommit(Transaction.java:109)
> 	at org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:177)
> 	... 20 more
> {noformat}

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