From: Andrew Tridgell Date: Wed, 6 Jun 2007 11:27:09 +0000 (+1000) Subject: ensure all nodes display disabled nodes correctly X-Git-Tag: tevent-0.9.20~348^2~2548 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ae56096b0bf35036aed0d944b91dd0eef9e83ea5;p=thirdparty%2Fsamba.git ensure all nodes display disabled nodes correctly (This used to be ctdb commit 959f82cfe926994658f5826007caccb0409003e1) --- diff --git a/ctdb/common/ctdb_monitor.c b/ctdb/common/ctdb_monitor.c index de5effb6980..166ee65df96 100644 --- a/ctdb/common/ctdb_monitor.c +++ b/ctdb/common/ctdb_monitor.c @@ -121,8 +121,9 @@ static void ctdb_health_callback(struct ctdb_context *ctdb, int status, void *p) data.dptr = (uint8_t *)&c; data.dsize = sizeof(c); - /* tell the recmaster that something has changed */ - ctdb_daemon_send_message(ctdb, ctdb->recovery_master, CTDB_SRVID_NODE_FLAGS_CHANGED, data); + /* tell the other nodes that something has changed */ + ctdb_daemon_send_message(ctdb, CTDB_BROADCAST_VNNMAP, + CTDB_SRVID_NODE_FLAGS_CHANGED, data); } diff --git a/ctdb/common/ctdb_recoverd.c b/ctdb/common/ctdb_recoverd.c index 9adbe5fbcf6..cdbeab377c4 100644 --- a/ctdb/common/ctdb_recoverd.c +++ b/ctdb/common/ctdb_recoverd.c @@ -991,11 +991,15 @@ static void monitor_handler(struct ctdb_context *ctdb, uint64_t srvid, return; } - DEBUG(0,("Node %u has changed flags - now 0x%x\n", c->vnn, c->flags)); + if (c->vnn != ctdb->vnn) { + DEBUG(0,("Node %u has changed flags - now 0x%x\n", c->vnn, c->flags)); + } nodemap->nodes[i].flags = c->flags; - if (ctdb->takeover.enabled) { + if (ctdb->recovery_master == ctdb->vnn && + ctdb->recovery_mode == CTDB_RECOVERY_NORMAL && + ctdb->takeover.enabled) { ret = ctdb_takeover_run(ctdb, nodemap); if (ret != 0) { DEBUG(0, (__location__ " Unable to setup public takeover addresses\n"));