summaryrefslogtreecommitdiff
path: root/ctdb
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2019-04-05 16:17:35 +1100
committerKarolin Seeger <kseeger@samba.org>2019-04-15 08:28:11 +0000
commitd9c47cb86e0a3200cb8de9581596a24fbeb5b3e1 (patch)
treec88186addcc25b72a43c19cd3ce99fbd58b74232 /ctdb
parente974e44014b9ea5b6c62f81b63a9288eec82d5ff (diff)
downloadsamba-d9c47cb86e0a3200cb8de9581596a24fbeb5b3e1.tar.gz
ctdb-daemon: Revert "We can not assume that just because we could complete a TCP handshake"
We also can not assume that nodes can be marked as connected via only the keepalive mechanism. Keepalives are not sent to disconnected nodes so, in the absence of other packets (e.g. broadcasts), 2 nodes may never become marked as connected to each other. Revert to marking nodes as connected in the TCP transport code. If a connection is to a non(-operational) ctdbd then it will revert to disconnected after a short while and may actually flap. This should be rare. This reverts commit 66919db3d7ab1e091223faf515b183af8bfddc83. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13888 Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com> (cherry picked from commit 38dc6d11a26c2e9a2cae7927321f2216ceb1c5ec)
Diffstat (limited to 'ctdb')
-rw-r--r--ctdb/tcp/tcp_connect.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/ctdb/tcp/tcp_connect.c b/ctdb/tcp/tcp_connect.c
index 13452a5e83b..385547e0e78 100644
--- a/ctdb/tcp/tcp_connect.c
+++ b/ctdb/tcp/tcp_connect.c
@@ -122,6 +122,9 @@ static void ctdb_node_connect_write(struct tevent_context *ev,
/* the queue subsystem now owns this fd */
tnode->fd = -1;
+
+ /* tell the ctdb layer we are connected */
+ node->ctdb->upcalls->node_connected(node);
}