Robbie Gemmell created PROTON-796:
-------------------------------------

             Summary: support reducing credit [as a means to stop a link 
without drain]
                 Key: PROTON-796
                 URL: https://issues.apache.org/jira/browse/PROTON-796
             Project: Qpid Proton
          Issue Type: Improvement
          Components: proton-c, proton-j
            Reporter: Robbie Gemmell


It would be useful if there was full support for reducing crdit on a link, 
perhaps even to 0 as a means of stopping it.

Currently the way to stop a link [and determine that it has actually stopped] 
would be to issue a 'drain' flow request and then handle either a flow response 
or arriving messages resulting in credit reaching 0.

Using drain in this way effectively acts as request for any more messages to be 
sent by the peer using remaining credit if it already could have but had yet to 
do so. In contrast, the peer wishing to stop the link might prefer those 
messages actually not be sent, as it is indicating it doesnt want those 
messages currently. This could be possible by reducing credit on the link to 0, 
and requesting the updated state be echo'd as shown at [1], though this would 
require PROTON-795 be resolved.

It may currently be possible to fiddle with credit and drain handling (e.g 
'adding or 'drain'ing negative credit) to simulate this currently, however it 
isnt clear that the resulting behaviour would be desirable, given the impact of 
any message already in-flight from the peer before it receives the 
credit-reducing flow which might lead to situations like negative-credit.

[1] 
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#doc-idp429232



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

Reply via email to