You are viewing a plain text version of this content. The canonical link for it is here.
Posted to proton@qpid.apache.org by Jelani Brandon <Je...@microsoft.com> on 2015/07/17 18:59:29 UTC
Unknown Settle
I'm having an issue with the pn_messenger_settle API that I'd like to see if you can clear up. We have a loop that uses non-blocking sends to transmit messages and attempts to settle them when they come back from the server. The server replies in non-sequential order and when we attempt to settle we get an PN_STATUS_UNKNOW. The message have been accepted, but it looks like the output window was shifted beyond the settle transaction prematurely. Here are the steps as to what is happening:
* The application is sending 20 messages to the server
* We set the outgoing window to 10
* We send message index 0 through 9
* The server sends disposition frames back in this order 1, 5, 9, 2, 9, 6, 7
* We settle the trackers in this order 1, 3, 5, 7, 9
* We then send message index 10 through 14
* The server sends disposition frames for message 0, 4, 8
* Then we settle frame 0 and get an unknown Status
* ...
It seems that if we try to settle any tracker that is [OutgoingWindowSize-MaxTrackerSent] then we get an PN_STATUS_UNKNOWN. Is there any way to remedy this situation?
I've attached the proton trace that illustrates this situation.
Thank you for the help,
Jelani Brandon