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

Timothy Bish updated ARTEMIS-2057:
----------------------------------
    Description: 
The broker currently grants credit based on the 'amqpCredit' configuration 
which default to 1000 using a check on the "remote credit" view which includes 
messages currently queued into proton but not processed by the protocol head 
yet.  This accounting can lead to a runaway credit situation if the sender is 
particularly fast or a significant number of small messages are batched into 
one TCP frame and the broker isn't able to clear the backlog from the proton 
queue fast enough such that the queue grows to the point that the granting 
algorithm starts granting "amqpCredit" number of credits on each new messages 
it processes from proton.

Another smaller issue is that the granting of credit allows for a client to 
have an outstanding balance of more than the configured "amqpCredits" which may 
not be what was originally intended by that option and doesn't match what many 
of the clients do when topping off credit at a low water mark. 

  was:
The broker currently grants credit based on the 'amqpCredit' configuration 
which default to 1000 using a check on the "remote credit" view which includes 
messages currently queued into proton but not processed by the protocol head 
yet.  This accounting can lead to a runaway credit situation if the sender is 
particularly fast or a significant number of small messages are batched into 
one TCP frame and the broker isn't able to clear the backlog from the proton 
queue fast enough such that the queue grows that the granting algorithm starts 
granting "amqpCredit" number of credits on each new messages it processes from 
proton.

Another smaller issue is that the granting of credit allows for a client to 
have an outstanding balance of more than the configured "amqpCredits" which may 
not be what was originally intended by that option and doesn't match what many 
of the clients do when topping off credit at a low water mark. 


> AMQP: Credit window can grow beyond max credit configuration
> ------------------------------------------------------------
>
>                 Key: ARTEMIS-2057
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2057
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: AMQP
>    Affects Versions: 2.6.2
>            Reporter: Timothy Bish
>            Assignee: Timothy Bish
>            Priority: Blocker
>             Fix For: 2.6.3
>
>
> The broker currently grants credit based on the 'amqpCredit' configuration 
> which default to 1000 using a check on the "remote credit" view which 
> includes messages currently queued into proton but not processed by the 
> protocol head yet.  This accounting can lead to a runaway credit situation if 
> the sender is particularly fast or a significant number of small messages are 
> batched into one TCP frame and the broker isn't able to clear the backlog 
> from the proton queue fast enough such that the queue grows to the point that 
> the granting algorithm starts granting "amqpCredit" number of credits on each 
> new messages it processes from proton.
> Another smaller issue is that the granting of credit allows for a client to 
> have an outstanding balance of more than the configured "amqpCredits" which 
> may not be what was originally intended by that option and doesn't match what 
> many of the clients do when topping off credit at a low water mark. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to