Robbie Gemmell commented on AMQ-6422:

The 'logicalDeliveryCount' increment added at the end of the 'delivery' method 
seems off since that method is called based on disposition activity, and may 
either never be called for a given message (if sent pre-settled) or be called 
multiple times for the same message (due to multiple dispositions).

For the purposes of credit tracking, the credit is used as soon as the message 
is finished being handed to proton, in this case in 'pumpOutbound' when the 
link is advanced to complete the current delivery, or the links 'current' 
incomplete delivery is settled (which must advance the link to complete the 

> AMQP - flow(1) without a dispositon can lead to blocked receive
> ---------------------------------------------------------------
>                 Key: AMQ-6422
>                 URL: https://issues.apache.org/jira/browse/AMQ-6422
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: AMQP
>            Reporter: Gary Tully
>            Assignee: Gary Tully
> Setting prefetch based on the credit can get in a knot if the credit is small 
> and the dispositions are outstanding.
> The prefetch gets set to 1, but with an inflight message, there is nothing 
> dispatched b/c the sub looks full.

This message was sent by Atlassian JIRA

Reply via email to