You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rob Godfrey (JIRA)" <qp...@incubator.apache.org> on 2008/03/03 21:10:52 UTC

[jira] Created: (QPID-828) [Java Broker]

[Java Broker]
-------------

                 Key: QPID-828
                 URL: https://issues.apache.org/jira/browse/QPID-828
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: M2, M1, M2.1
            Reporter: Rob Godfrey
            Assignee: Rob Godfrey
             Fix For: M2.1


Another issue with persistent messages and transactions, and the implementation of TransientMessageData and the WeakReferenceMessageHandle.

Seen while running MessageRequeueTest

java.lang.NullPointerException
	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.populateFromMessageMetaData(WeakReferenceMessageHandle.java:80)
	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.loadMessageMetaData(WeakReferenceMessageHandle.java:74)
	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:124)
	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 org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
	at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
	at org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:174)
	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
	at org.apache.qpid.pool.PoolingFilter.messageReceived(PoolingFilter.java:371)
	at org.apache.mina.filter.ReferenceCountingIoFilter.messageReceived(ReferenceCountingIoFilter.java:96)
	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
	at 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:885)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
	at java.lang.Thread.run(Thread.java:619)


Issue is that _tranientMessageData is set to null in the deliver method of AMQMessage.

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


[jira] Resolved: (QPID-828) [Java Broker] NPE On Tx Commit

Posted by "Marnie McCormack (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marnie McCormack resolved QPID-828.
-----------------------------------

    Resolution: Fixed

Resolved and hope not to see any transient failures !

> [Java Broker] NPE On Tx Commit
> ------------------------------
>
>                 Key: QPID-828
>                 URL: https://issues.apache.org/jira/browse/QPID-828
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M1, M2, M2.1
>            Reporter: Rob Godfrey
>            Assignee: Rob Godfrey
>             Fix For: M2.1
>
>
> Another issue with persistent messages and transactions, and the implementation of TransientMessageData and the WeakReferenceMessageHandle.
> Seen while running MessageRequeueTest
> java.lang.NullPointerException
> 	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.populateFromMessageMetaData(WeakReferenceMessageHandle.java:80)
> 	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.loadMessageMetaData(WeakReferenceMessageHandle.java:74)
> 	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:124)
> 	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 org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> 	at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
> 	at org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:174)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> 	at org.apache.qpid.pool.PoolingFilter.messageReceived(PoolingFilter.java:371)
> 	at org.apache.mina.filter.ReferenceCountingIoFilter.messageReceived(ReferenceCountingIoFilter.java:96)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at 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:885)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> 	at java.lang.Thread.run(Thread.java:619)
> Issue is that _tranientMessageData is set to null in the deliver method of AMQMessage.

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


[jira] Updated: (QPID-828) [Java Broker] NPE On Tx Commit

Posted by "Rob Godfrey (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rob Godfrey updated QPID-828:
-----------------------------

    Summary: [Java Broker] NPE On Tx Commit  (was: [Java Broker])

> [Java Broker] NPE On Tx Commit
> ------------------------------
>
>                 Key: QPID-828
>                 URL: https://issues.apache.org/jira/browse/QPID-828
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: M1, M2, M2.1
>            Reporter: Rob Godfrey
>            Assignee: Rob Godfrey
>             Fix For: M2.1
>
>
> Another issue with persistent messages and transactions, and the implementation of TransientMessageData and the WeakReferenceMessageHandle.
> Seen while running MessageRequeueTest
> java.lang.NullPointerException
> 	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.populateFromMessageMetaData(WeakReferenceMessageHandle.java:80)
> 	at org.apache.qpid.server.queue.WeakReferenceMessageHandle.loadMessageMetaData(WeakReferenceMessageHandle.java:74)
> 	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:124)
> 	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 org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> 	at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
> 	at org.apache.mina.filter.codec.QpidProtocolCodecFilter.messageReceived(QpidProtocolCodecFilter.java:174)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> 	at org.apache.qpid.pool.PoolingFilter.messageReceived(PoolingFilter.java:371)
> 	at org.apache.mina.filter.ReferenceCountingIoFilter.messageReceived(ReferenceCountingIoFilter.java:96)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> 	at org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> 	at 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:885)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> 	at java.lang.Thread.run(Thread.java:619)
> Issue is that _tranientMessageData is set to null in the deliver method of AMQMessage.

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