16ee9a8683
This changes improves the way of we wait for replies. Currently, one of the rpc client is reponsible to poll the amqp connection used for replies and passed received answers to the correct client. In this way, we have some case if no client is waiting for a reply, the connection is not polled and no IO are done on the wire. The direct effect of that is we don't detect if the tcp connection is broken, from the system point of view, the tcp connection stay alive even if someone between the client and server have closed the connection. This change refactors the replies waiter code by creating a background thread responsible to poll the connection instead of a random client. The connection lost will be detect as soon as possible even if no rpc client are currently used the connection. This is a mandatory change to be able to enable heartbeat on this connection. Related-Bug: #1371723 Related-Bug: #856764 Change-Id: I82d4029dd897ef13ae8ba3cda84a2fe65c8c91d2 |
||
---|---|---|
.. | ||
protocols | ||
__init__.py | ||
amqp.py | ||
amqpdriver.py | ||
base.py | ||
common.py | ||
impl_fake.py | ||
impl_qpid.py | ||
impl_rabbit.py | ||
impl_zmq.py | ||
matchmaker.py | ||
matchmaker_redis.py | ||
matchmaker_ring.py | ||
pool.py |