Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
qpid-java-6.1.4
-
None
Description
NPE is thrown on attempt to commit a transaction on non-transacted session.
The broker crashes with the following stacktrace
######################################################################## # # Unhandled Exception java.lang.NullPointerException in Thread IO-/127.0.0.1:52584 # # Exiting # ######################################################################## java.lang.NullPointerException at org.apache.qpid.bytebuffer.QpidByteBuffer.duplicate(QpidByteBuffer.java:416) at org.apache.qpid.server.protocol.v0_8.CachedFrame.writePayload(CachedFrame.java:53) at org.apache.qpid.server.protocol.v0_8.AMQPConnection_0_8Impl.writeFrame(AMQPConnection_0_8Impl.java:382) at org.apache.qpid.server.protocol.v0_8.AMQChannel$9.run(AMQChannel.java:3658) at org.apache.qpid.server.txn.AsyncAutoCommitTransaction$5.postCommit(AsyncAutoCommitTransaction.java:352) at org.apache.qpid.server.txn.AsyncAutoCommitTransaction.addFuture(AsyncAutoCommitTransaction.java:129) at org.apache.qpid.server.txn.AsyncAutoCommitTransaction.commit(AsyncAutoCommitTransaction.java:348) at org.apache.qpid.server.protocol.v0_8.AMQChannel.commit(AMQChannel.java:1278) at org.apache.qpid.server.protocol.v0_8.AMQChannel.receiveTxCommit(AMQChannel.java:3652) at org.apache.qpid.codec.ServerDecoder.processMethod(ServerDecoder.java:228) at org.apache.qpid.codec.AMQDecoder.processFrame(AMQDecoder.java:196) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder.doProcessFrame(BrokerDecoder.java:143) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder.processFrame(BrokerDecoder.java:67) at org.apache.qpid.codec.AMQDecoder.processInput(AMQDecoder.java:178) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder.access$000(BrokerDecoder.java:36) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder$1.run(BrokerDecoder.java:106) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder$1.run(BrokerDecoder.java:99) at java.security.AccessController.doPrivileged(Native Method) at org.apache.qpid.server.protocol.v0_8.BrokerDecoder.processAMQPFrames(BrokerDecoder.java:98) at org.apache.qpid.codec.AMQDecoder.decode(AMQDecoder.java:111) at org.apache.qpid.codec.ServerDecoder.decodeBuffer(ServerDecoder.java:43) at org.apache.qpid.server.protocol.v0_8.AMQPConnection_0_8Impl$1.run(AMQPConnection_0_8Impl.java:253) at org.apache.qpid.server.protocol.v0_8.AMQPConnection_0_8Impl$1.run(AMQPConnection_0_8Impl.java:245) at java.security.AccessController.doPrivileged(Native Method) at org.apache.qpid.server.protocol.v0_8.AMQPConnection_0_8Impl.received(AMQPConnection_0_8Impl.java:244) at org.apache.qpid.server.transport.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:143) at org.apache.qpid.server.transport.NonBlockingConnection.processAmqpData(NonBlockingConnection.java:624) at org.apache.qpid.server.transport.NonBlockingConnectionPlainDelegate.processData(NonBlockingConnectionPlainDelegate.java:58) at org.apache.qpid.server.transport.NonBlockingConnection.doRead(NonBlockingConnection.java:512) at org.apache.qpid.server.transport.NonBlockingConnection.doWork(NonBlockingConnection.java:285) at org.apache.qpid.server.transport.NetworkConnectionScheduler.processConnection(NetworkConnectionScheduler.java:130) at org.apache.qpid.server.transport.SelectorThread$ConnectionProcessor.processConnection(SelectorThread.java:563) at org.apache.qpid.server.transport.SelectorThread$SelectionTask.performSelect(SelectorThread.java:354) at org.apache.qpid.server.transport.SelectorThread$SelectionTask.run(SelectorThread.java:97) at org.apache.qpid.server.transport.SelectorThread.run(SelectorThread.java:521) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)