Jakub Scholz created QPID-7127:
----------------------------------

             Summary: [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


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]

Reply via email to