[ 
https://issues.apache.org/jira/browse/QPID-818?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marnie McCormack resolved QPID-818.
-----------------------------------

    Resolution: Fixed

Changes committed & ok

> [Java Broker] Persistent Pub/Sub can get exception on acking message
> --------------------------------------------------------------------
>
>                 Key: QPID-818
>                 URL: https://issues.apache.org/jira/browse/QPID-818
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M2
>            Reporter: Rob Godfrey
>            Assignee: Rob Godfrey
>             Fix For: M2.1
>
>
>  2008-02-27 12:18:22,684 ERROR [pool-2-thread-6] queue.AMQMessage 
> (AMQMessage.java:694) - org.apache.qpid.AMQException: Metadata not found for 
> message with id 3089
> org.apache.qpid.AMQException: Metadata not found for message with id 3089
>         at 
> org.apache.qpid.server.queue.WeakReferenceMessageHandle.loadMessageMetaData(WeakReferenceMessageHandle.java:73)
>         at 
> org.apache.qpid.server.queue.WeakReferenceMessageHandle.getContentHeaderBody(WeakReferenceMessageHandle.java:64)
>         at 
> org.apache.qpid.server.queue.AMQMessage.getContentHeaderBody(AMQMessage.java:348)
>         at 
> org.apache.qpid.server.queue.AMQMessage.getSize(AMQMessage.java:688)
>         at 
> org.apache.qpid.server.ack.UnacknowledgedMessageMapImpl.remove(UnacknowledgedMessageMapImpl.java:100)
>         at 
> org.apache.qpid.server.ack.UnacknowledgedMessageMapImpl.remove(UnacknowledgedMessageMapImpl.java:87)
>         at org.apache.qpid.server.ack.TxAck.commit(TxAck.java:126)
>         at org.apache.qpid.server.txn.TxnBuffer.commit(TxnBuffer.java:51)
>         at 
> org.apache.qpid.server.txn.LocalTransactionalContext.commit(LocalTransactionalContext.java:215)
>         at org.apache.qpid.server.AMQChannel.commit(AMQChannel.java:935)
>         at 
> org.apache.qpid.server.handler.TxCommitHandler.methodReceived(TxCommitHandler.java:67)
>         at 
> org.apache.qpid.server.handler.ServerMethodDispatcherImpl.dispatchTxCommit(ServerMethodDispatcherImpl.java:547)
>         at 
> org.apache.qpid.framing.amqp_0_9.TxCommitBodyImpl.execute(TxCommitBodyImpl.java:103)
>         at 
> org.apache.qpid.server.state.AMQStateManager.methodReceived(AMQStateManager.java:204)
>         at 
> org.apache.qpid.server.protocol.AMQMinaProtocolSession.methodFrameReceived(AMQMinaProtocolSession.java:297)
>         at 
> org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:93)
>         at 
> org.apache.qpid.server.protocol.AMQMinaProtocolSession.frameReceived(AMQMinaProtocolSession.java:237)
>         at 
> org.apache.qpid.server.protocol.AMQMinaProtocolSession.dataBlockReceived(AMQMinaProtocolSession.java:193)
>         at 
> org.apache.qpid.server.protocol.AMQPFastProtocolHandler.messageReceived(AMQPFastProtocolHandler.java:241)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>         at 
> org.apache.qpid.pool.PoolingFilter.messageReceived(PoolingFilter.java:371)
>         at 
> com.jpmc.qpid.org.apache.mina.filter.ReferenceCountingIoFilter.messageReceived(ReferenceCountingIoFilter.java:96)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>         at 
> com.jpmc.qpid.org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
>         at 
> com.jpmc.qpid.org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:174)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>         at 
> com.jpmc.qpid.org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>         at org.apache.qpid.pool.Event$ReceivedEvent.process(Event.java:86)
>         at org.apache.qpid.pool.Job.processAll(Job.java:110)
>         at org.apache.qpid.pool.Job.run(Job.java:149)
>         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)
>  
> Issue is that tranient message data is cleared by another thread which is 
> also processing the ack.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to