John Eckersberg f9de265f39 amqp1: Do not reuse _socket_connection on reconnect
Each _SocketConnection object is unique per-peer.  For example, the
properties attribute may contain keys such as 'x-ssl-peer-name'.
Reusing the existing _socket_connection during failover will cause the
TLS handshake to fail since the peer name will not match.  There is
potential for other similar-yet-unexplored bad things to happen as
well.

Instead, reconnect by waking up the eventloop via the _do_reconnect
method, which reconstructs the connection properties to reflect the
new (failed-over-to) host and ultimately crates a new
_SocketConnection (or re-uses a *valid* old one) in
eventloop.Thread.connect().

Closes-Bug: #1938945
Change-Id: I0c8dc447f4dc8d0d08c312a1f3e6fa1745fb69fd
2021-08-10 17:01:04 -04:00
..
2020-05-11 10:21:58 +02:00
2020-10-13 12:44:30 +01:00
2020-05-11 10:21:58 +02:00
2020-05-11 10:21:58 +02:00