You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Gary Tully (JIRA)" <ji...@apache.org> on 2016/07/27 14:51:20 UTC

[jira] [Created] (AMQ-6378) KahaDb recover from corrupt metadata state locations that can be rebuilt

Gary Tully created AMQ-6378:
-------------------------------

             Summary: KahaDb recover from corrupt metadata state locations that can be rebuilt
                 Key: AMQ-6378
                 URL: https://issues.apache.org/jira/browse/AMQ-6378
             Project: ActiveMQ
          Issue Type: Bug
          Components: Message Store
    Affects Versions: 5.13.0
            Reporter: Gary Tully
            Assignee: Gary Tully
             Fix For: 5.14.0


The index tracks producerAudit and ackMessageFileMap locations. Failure to recreate/read on startup can be replayed from the journal however if the locations are corrupt the broker errors out. In this case a replay can still recreate this information.

{code}
java.io.IOException: Invalid location: 7:4802, : java.lang.NegativeArraySizeException

	at org.apache.activemq.store.kahadb.disk.journal.DataFileAccessor.readRecord(DataFileAccessor.java:92)
	at org.apache.activemq.store.kahadb.disk.journal.Journal.read(Journal.java:867)
	at org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:1123)
	at org.apache.activemq.store.kahadb.MessageDatabase.recoverProducerAudit(MessageDatabase.java:754)
	at org.apache.activemq.store.kahadb.MessageDatabase.recover(MessageDatabase.java:639)
	at org.apache.activemq.store.kahadb.MessageDatabase.open(MessageDatabase.java:439)
	at org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:458)
	at org.apache.activemq.store.kahadb.MessageDatabase.doStart(MessageDatabase.java:291)
	at org.apache.activemq.store.kahadb.KahaDBStore.doStart(KahaDBStore.java:216)
	at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)
	at org.apache.activemq.store.kahadb.KahaDBPersistenceAdapter.doStart(KahaDBPersistenceAdapter.java:223)
	at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)
	at org.apache.activemq.broker.BrokerService.doStartPersistenceAdapter(BrokerService.java:674)
	at org.apache.activemq.broker.BrokerService.startPersistenceAdapter(BrokerService.java:658)
	at org.apache.activemq.broker.BrokerService.start(BrokerService.java:622)
Caused by: java.lang.NegativeArraySizeException
	at org.apache.activemq.store.kahadb.disk.journal.DataFileAccessor.readRecord(DataFileAccessor.java:87){code}
	



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)