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

Keith Wall updated QPID-6653:
-----------------------------
    Fix Version/s: qpid-java-7.0.0

> Earlier Qpid Java client: receiver issue with multi-transfer pre-settled 
> messages
> ---------------------------------------------------------------------------------
>
>                 Key: QPID-6653
>                 URL: https://issues.apache.org/jira/browse/QPID-6653
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: 0.32
>            Reporter: Xin Chen
>             Fix For: qpid-java-7.0.0
>
>         Attachments: ReceivingLinkEndpoint.java
>
>
> This issue is regarding the Qpid Java client released as part of the Qpid JMS 
> 0.32. https://qpid.apache.org/releases/qpid-0.32/index.html
> When the remote peer sends settled message with multiple transfer frames, it 
> could use the same delivery tag (e.g. an empty binary) for all messages. The 
> ReceivingLinkEndpoint class keeps track of both unsettled deliveries and 
> partially received deliveries in two maps, _unsettledIds and _unsettledMap. 
> When user acknowledges a message by calling Receiver.acknowledge(Message), 
> the state of the delivery is removed from both maps. This is causing a 
> problem if the user acknowledges a previously received message and a new 
> message is being partially received (because they share the same delivery 
> tag). The observed symptom is receiver stuck and NullPointerException from 
> connection's frame pump when decoding frame buffers.
> I attempted a fix by using a new variable to remember the last received 
> partial delivery, if any, and only putting unsettled deliveries into the two 
> maps. It worked in this particular scenario. The existing tests are passing 
> with this change but I am not completely sure if it has any side effects.
> I will attach a modified ReceivingLinkEndpoint.Java file so you can take a 
> look.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to