Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
proton-j-0.32.0
-
None
Description
If a delivery has disposition state applied and is locally-settled (and the transport output processed), e.g a consumer receiving an unsettled message and acknowledging it, then the unexpected act of applying further delivery state to the delivery object can result in erroneously emitting another disposition frame upon future processing.
This occurs because applying the state makes adds the delivery to the transport work list again, with the process only being gated on prior remote-settlement to prevent sending a useless notice of settlement. It should also gate on local-settlement to avoid the odd post-settlement state application from actually leading to a disposition frame.
Attachments
Issue Links
- links to