oslo.messaging/oslo_messaging
Mehdi Abaakouk 16ee9a8683 Refactor the replies waiter code
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
2015-02-02 09:51:24 +00:00
..
_cmd Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00
_drivers Refactor the replies waiter code 2015-02-02 09:51:24 +00:00
_executors Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00
notify Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00
openstack Move files out of the namespace package 2015-01-12 12:50:41 -05:00
rpc Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00
tests Gate functionnal testing improvements 2015-01-30 11:04:52 +01:00
__init__.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
_i18n.py Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00
_utils.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
conffixture.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
exceptions.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
localcontext.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
opts.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
serializer.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
server.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
target.py Move files out of the namespace package 2015-01-12 12:50:41 -05:00
transport.py Update Oslo imports to remove namespace package 2015-01-21 21:09:33 -05:00