[SCM] CTDB repository - branch 1.2-nodeflags updated - ctdb-1.9.1-275-gd5a2f36

Ronnie Sahlberg sahlberg at samba.org
Wed Jan 12 16:16:32 MST 2011


The branch, 1.2-nodeflags has been updated
       via  d5a2f364ef0273c8a2c29d0205df13ff3afd1495 (commit)
      from  01ab6b99d463a3f8796b1108b4ec849ba8348f66 (commit)

http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=1.2-nodeflags


- Log -----------------------------------------------------------------
commit d5a2f364ef0273c8a2c29d0205df13ff3afd1495
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Thu Jan 13 09:35:37 2011 +1100

    IPALLOCATION : If the node is held pinned down in "init" state
    by external services failing to start, or blocking CTDBD from finishing the startup phase,
    we can encounter a situation where we have not yet fully initialized, but a
    remote recovery master tries to release a certain ip clusterwide.
    
    In this situation the node that is pinned down in init/startup phase
    would fail to perform the release of the ip address since we are not yet fully operational and not yet host any valid interfaces.
    
    In this situation, we just need to remain unhealthy, there is on need to
    also ban the node.
    
    Remove the autobanning for this condition and just let the node remain in
    unhealthy mode.
    Banning is overkill in this situation when the system is broken and just
    draws attention to ctdbd instead of the root cause.

-----------------------------------------------------------------------

Summary of changes:
 server/ctdb_takeover.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/server/ctdb_takeover.c b/server/ctdb_takeover.c
index e3e6787..1d6fe6e 100644
--- a/server/ctdb_takeover.c
+++ b/server/ctdb_takeover.c
@@ -594,10 +594,8 @@ int32_t ctdb_control_takeover_ip(struct ctdb_context *ctdb,
 
 	if (vnn->iface == NULL && have_ip) {
 		DEBUG(DEBUG_CRIT,(__location__ " takeoverip of IP %s is known to the kernel, "
-				  "but we have no interface assigned, has someone manually configured it?"
-				  "banning ourself\n",
+				  "but we have no interface assigned, has someone manually configured it? Ignore for now.\n",
 				 ctdb_addr_to_str(&vnn->public_address)));
-		ctdb_ban_self(ctdb);
 		return -1;
 	}
 
@@ -794,12 +792,10 @@ int32_t ctdb_control_release_ip(struct ctdb_context *ctdb,
 	}
 
 	if (vnn->iface == NULL) {
-		DEBUG(DEBUG_CRIT,(__location__ " release_ip of IP %s is known to the kernel, "
-				  "but we have no interface assigned, has someone manually configured it?"
-				  "banning ourself\n",
+		DEBUG(DEBUG_ERR,(__location__ " release_ip of IP %s is known to the kernel, "
+				 "but we have no interface assigned, has someone manually configured it? Ignore for now.\n",
 				 ctdb_addr_to_str(&vnn->public_address)));
-		ctdb_ban_self(ctdb);
-		return -1;
+		return 0;
 	}
 
 	DEBUG(DEBUG_NOTICE,("Release of IP %s/%u on interface %s  node:%d\n",


-- 
CTDB repository


More information about the samba-cvs mailing list