You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Rob Davies (JIRA)" <ji...@apache.org> on 2008/07/29 06:24:00 UTC
[jira] Resolved: (AMQ-1872) ArrayIndexOutOfBoundsException on
restart of broker with durable subscriptions
[ https://issues.apache.org/activemq/browse/AMQ-1872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rob Davies resolved AMQ-1872.
-----------------------------
Resolution: Fixed
Fixed by SVN revision 680465
> ArrayIndexOutOfBoundsException on restart of broker with durable subscriptions
> ------------------------------------------------------------------------------
>
> Key: AMQ-1872
> URL: https://issues.apache.org/activemq/browse/AMQ-1872
> Project: ActiveMQ
> Issue Type: Bug
> Components: Message Store
> Affects Versions: 5.1.0, 5.2.0
> Reporter: Rob Davies
> Assignee: Rob Davies
> Priority: Critical
> Fix For: 5.2.0
>
>
> We have two brokers A & B, with a producer on A and durable subscriber on B. A sends 50K messages and B consumes 25K messages. Then broker B is shutdown. We then restart Broker B and restablish the durable subscription.
> We are seeing Broker B throwing the following array out of bounds exception when cleaning up the persistent adapter indexes after the consumer reconnects to the restarted broker B.
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> at java.lang.System.arraycopy(Native Method)
> at org.apache.activemq.kaha.impl.index.hash.HashIndex.addToBin(HashIndex.java:431)
> at org.apache.activemq.kaha.impl.index.hash.HashIndex.doLoad(HashIndex.java:497)
> at org.apache.activemq.kaha.impl.index.hash.HashIndex.doCompress(HashIndex.java:535)
> at org.apache.activemq.kaha.impl.index.hash.HashIndex.load(HashIndex.java:253)
> at org.apache.activemq.kaha.impl.container.MapContainerImpl.load(MapContainerImpl.java:107)
> at org.apache.activemq.store.kahadaptor.KahaReferenceStoreAdapter.getMapReferenceContainer(KahaReferenceStoreAdapter.java:210)
> at org.apache.activemq.store.kahadaptor.KahaReferenceStoreAdapter.createTopicReferenceStore(KahaReferenceStoreAdapter.java:168)
> at org.apache.activemq.store.amq.AMQPersistenceAdapter.createTopicMessageStore(AMQPersistenceAdapter.java:461)
> at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:94)
> at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:425)
> at org.apache.activemq.broker.jmx.ManagedTopicRegion.createDestination(ManagedTopicRegion.java:56)
> at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:120)
> at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:266)
> at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:141)
> at org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBroker.java:147)
> at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:141)
> at org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:148)
> at org.apache.activemq.broker.region.AbstractRegion.lookup(AbstractRegion.java:385)
> at org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:67)
> at org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:383)
> at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:85)
> at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:83)
> at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:85)
> at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:92)
> at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:529)
> at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:345)
> at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:293)
> at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:181)
> at org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:104)
> at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
> at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:205)
> 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:885)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> ... 1 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.