[
https://issues.apache.org/jira/browse/QPID-7127?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pavel Moravec resolved QPID-7127.
---------------------------------
Resolution: Fixed
Assignee: Pavel Moravec
Fix Version/s: qpid-cpp-next
> [C++ broker] Setting large idle timeout cause confuses timers in the C++
> broker
> -------------------------------------------------------------------------------
>
> Key: QPID-7127
> URL: https://issues.apache.org/jira/browse/QPID-7127
> Project: Qpid
> Issue Type: Bug
> Components: C++ Broker
> Affects Versions: qpid-cpp-0.34
> Reporter: Jakub Scholz
> Assignee: Pavel Moravec
> Fix For: qpid-cpp-next
>
>
> I run into following problem. When I try to connect with SwiftMQ AMQP client
> (http://www.swiftmq.com/) to the Qpid C++ broker and don't specify idle
> timeout, it will use in64_max. The Qpid broker seems to be fine with it and
> opens the connection:
> ConnectionDispatcher, , visit, po=[POOpen,
> containerId=356a476d-4678-4cfa-9680-8bf648b808d2@schojak,
> maxFrameSize=2147483647, maxChannel=255, idleTimeout=9223372036854775807]
> ConnectionDispatcher, , visit, po=[POConnectionFrameReceived, frame=[Open
> containerId=91655fa5-80d3-4cd1-9a72-51b82e36de00, maxFrameSize=4294967295,
> channelMax=255, idleTimeOut=2147483647,
> offeredCapabilities=[ANONYMOUS-RELAY], properties=[product=qpid-cpp,
> platform=Linux, host=6a2d20e32f38, version=0.35]], sassl=false]
> However, the timers in the broker get crazy from it and start raising milions
> of errors like this:
> 2016-03-04 15:55:40 [System] error ConnectionTicker couldn't setup next timer
> firing: 33.8867ms[0ns]
> 2016-03-04 15:55:40 [System] error ConnectionTicker couldn't setup next timer
> firing: 33.8937ms[0ns]
> 2016-03-04 15:55:40 [System] error ConnectionTicker couldn't setup next timer
> firing: 33.9006ms[0ns]
> 2016-03-04 15:55:40 [System] error ConnectionTicker couldn't setup next timer
> firing: 33.9076ms[0ns]
> This seems to go on until the client disconnects or until the disk goes full.
> IT also seems to cause some secondary problems (perfomance, the affected
> client cannot close producer etc.)
> The int64 idle timeout seems to be bug in the SwiftMQ client. But Qpid should
> definitely handle this better:
> - Not open the connection when the indle timeout is invalid
> - Make sure that the timer errors don't appear
> The problem seems to be present in both 0.34 as well as in trunk.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]