ctdb-tcp: Make error handling for outbound connection consistent
authorMartin Schwenke <martin@meltin.net>
Tue, 28 Jan 2020 05:49:14 +0000 (16:49 +1100)
committerKarolin Seeger <kseeger@samba.org>
Mon, 17 Feb 2020 15:50:11 +0000 (15:50 +0000)
commit7f836b101030b4cf76eeb729acab29ad3e413961
treeea17c6f1d083adaa047cf664f6126a37face4b3f
parentf3eebacb127d11598cdeb22e27edd6dcc133b741
ctdb-tcp: Make error handling for outbound connection consistent

If we can't bind the local end of an outgoing connection then
something has gone wrong.  Retrying is better than failing into a
zombie state.  The interface might come back up and/or the address my
be reconfigured.

While here, do the same thing for the other (potentially transient)
failures.

The unknown address family failure is special but just handle it via a
retry.  Technically it can't happen because the node address parsing
can only return values with address family AF_INET or AF_INET6.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14274
RN: Retry inter-node TCP connections on more transient failures

Reported-by: 耿纪超 <gengjichao@jd.com>
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
(cherry picked from commit a40fc709cc972dadb40efbf1394b10fae3cfcc07)

Autobuild-User(v4-10-test): Karolin Seeger <kseeger@samba.org>
Autobuild-Date(v4-10-test): Mon Feb 17 15:50:11 UTC 2020 on sn-devel-144
ctdb/tcp/tcp_connect.c