[ 
https://issues.apache.org/jira/browse/QPID-6482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15050632#comment-15050632
 ] 

Rob Godfrey commented on QPID-6482:
-----------------------------------

So the first transfer frame of any delivery MUST have a deliveryId, this is 
then put into the last delivery Id of the link endpoint.  Subsequent transfer 
frames may omit the delivery Id - in that case we get the deliveryId for the 
transfer frame from the value we previously set on the link endpoint.  Once the 
last transfer frame of a delivery has arrived (i.e. a transfer frame where 
more=false) we clear the "last delivery id" is cleared (since any future 
deliveries must relate to a new delivery).

Can you replicate your issue with protocol logging turned on.  On the face of 
it the code in the SessionEndpoint is correct, but hopefully the protocol 
logging will give us more of a clue as to what is going wrong.

> NPE in SessionEndpoint.receiveTransfer when receiving large message
> -------------------------------------------------------------------
>
>                 Key: QPID-6482
>                 URL: https://issues.apache.org/jira/browse/QPID-6482
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.32
>            Reporter: Mark Soderquist
>
> We are occasionally seeing the following exception when receiving a message 
> of 500000 bytes. Sometimes it helps to increase the receive timeout but not 
> always:
> java.lang.NullPointerException
>       at 
> org.apache.qpid.amqp_1_0.transport.SessionEndpoint.receiveTransfer(SessionEndpoint.java:435)
>       at 
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receiveTransfer(ConnectionEndpoint.java:655)
>       at 
> org.apache.qpid.amqp_1_0.type.transport.Transfer.invoke(Transfer.java:285)
>       at 
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receive(ConnectionEndpoint.java:808)
>       at 
> org.apache.qpid.amqp_1_0.framing.FrameHandler.parse(FrameHandler.java:241)
>       at 
> org.apache.qpid.amqp_1_0.framing.ConnectionHandler.parse(ConnectionHandler.java:75)
>       at 
> org.apache.qpid.amqp_1_0.client.TCPTransportProvider.doRead(TCPTransportProvider.java:244)
>       at 
> org.apache.qpid.amqp_1_0.client.TCPTransportProvider.access$000(TCPTransportProvider.java:47)
>       at 
> org.apache.qpid.amqp_1_0.client.TCPTransportProvider$1.run(TCPTransportProvider.java:185)
>       at java.lang.Thread.run(Thread.java:745)
> Unknown endpoint 
> Transfer{handle=0,deliveryId=0,deliveryTag=\x00\x00\x00\x00\x00\x00\x00\x00,messageFormat=0}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to