You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Robbie Gemmell (JIRA)" <ji...@apache.org> on 2018/07/10 12:32:00 UTC

[jira] [Commented] (ARTEMIS-1976) AMQP IdleTimeout ignoring user defined value

    [ https://issues.apache.org/jira/browse/ARTEMIS-1976?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16538501#comment-16538501 ] 

Robbie Gemmell commented on ARTEMIS-1976:
-----------------------------------------

I verified the change at the time, and have just done so again on master, its working as intended. I think its likely your expectations and/or point of observations are incorrect.

With a 4000ms idle-timeout set, the broker advertised a 2000ms to the client in its Open frame as expected, and the client then needs to send heartbeats as needed to satisfy that. Most will pessimistically send every 1000ms here due to a looseness in the spec making it uncertain whether the servers timeout is actually 4000 or really 2000). The broker only has to send heartbeats as needed to satisfy the *clients* configured idle-timeout, if any. I'm guessing (it would be clear if you posted the entire trace) you connected a client that has a 60sec idle-timeout, which then advertised 30sec in its Open frame to the broker, and so the broker passimistically sends every 15sec and you are observing that rather than what the client sends.

> AMQP IdleTimeout ignoring user defined value
> --------------------------------------------
>
>                 Key: ARTEMIS-1976
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1976
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Oleg Sushchenko
>            Priority: Major
>
> Steps:
>  * configure broker.xml with amqpIdleTimeout=4000 value:
> {code:java}
> <acceptor name="amqp">tcp://0.0.0.0:5672?amqpIdleTimeout=4000;tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300</acceptor> {code}
>  
>  * start broker
>  * connect to broker with client
>  * check broker logs
> Expected result:
>  * I get Empty Frames every 2 seconds
> Actual results:
>  * Seems that value is not working because I get an Empty Frame every 15 seconds
> {code:java}
> 2018-07-10 10:08:29,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:08:44,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:08:59,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:09:14,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:09:29,283 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:09:44,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> 2018-07-10 10:09:59,282 FINE  [proton.trace] IN: CH[0] : Empty Frame
> {code}



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