[SCM] CTDB repository - branch master updated - ctdb-1.0.65-11-g499a01f

Ronnie Sahlberg sahlberg at samba.org
Mon Nov 24 22:00:42 GMT 2008


The branch, master has been updated
       via  499a01fece2a5f24f1b2943cf3dc6e9a3a8ca3b5 (commit)
      from  03e2e436db5cfd29a56d13f5d2101e42389bfc94 (commit)

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


- Log -----------------------------------------------------------------
commit 499a01fece2a5f24f1b2943cf3dc6e9a3a8ca3b5
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date:   Mon Nov 24 19:06:02 2008 +1100

    inew version 1.0.66
    ddwq

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

Summary of changes:
 include/ctdb_private.h  |    1 +
 packaging/RPM/ctdb.spec |   13 ++++++++++++-
 server/ctdb_recoverd.c  |    8 +++++---
 server/ctdbd.c          |    4 ++++
 4 files changed, 22 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/include/ctdb_private.h b/include/ctdb_private.h
index cb83f86..19f85f2 100644
--- a/include/ctdb_private.h
+++ b/include/ctdb_private.h
@@ -407,6 +407,7 @@ struct ctdb_context {
 	struct ctdb_call_state *pending_calls;
 	struct ctdb_client_ip *client_ip_list;
 	bool do_setsched;
+	bool do_checkpublicip;
 	void *saved_scheduler_param;
 	struct _trbt_tree_t *server_ids;	
 	const char *event_script_dir;
diff --git a/packaging/RPM/ctdb.spec b/packaging/RPM/ctdb.spec
index a3e8bb4..d8bd76b 100644
--- a/packaging/RPM/ctdb.spec
+++ b/packaging/RPM/ctdb.spec
@@ -5,7 +5,7 @@ Vendor: Samba Team
 Packager: Samba Team <samba at samba.org>
 Name: ctdb
 Version: 1.0
-Release: 65
+Release: 66
 Epoch: 0
 License: GNU GPL version 3
 Group: System Environment/Daemons
@@ -120,6 +120,17 @@ fi
 %{_includedir}/ctdb_private.h
 
 %changelog
+* Mon Nov 24 2008 : Version 1.0.66
+ - Allow to change the recmaster even when we are not frozen.
+ - Remove two redundant SAMBA_CHECK variables from the sysconf example
+ - After a node failure it can take very long before some lock operations
+   ctdb needs to perform are allowed/works with gpfs again. Workaround this
+   by treating a hang/timeout as success.
+ - Dont override CTDB_BASE is fet in the shell already
+ - Always send keepalive packets regardless of whether the link is idle or not.
+ - Rewrite the disable/enable flag update logic to prevent a race between 
+   "ctdb disable/enable" and the recovery daemon when updating the flags to 
+   all nodes.
 * Thu Nov 13 2008 : Version 1.0.65
  - Update the sysconfig example: The default debug level is 2 (NOTICE) and not
    0 (ERROR)
diff --git a/server/ctdb_recoverd.c b/server/ctdb_recoverd.c
index bef4bb1..4faa2f8 100644
--- a/server/ctdb_recoverd.c
+++ b/server/ctdb_recoverd.c
@@ -2510,9 +2510,11 @@ again:
 	/* verify that we have all ip addresses we should have and we dont
 	 * have addresses we shouldnt have.
 	 */ 
-	if (verify_ip_allocation(ctdb, pnn) != 0) {
-		DEBUG(DEBUG_ERR, (__location__ " Public IPs were inconsistent.\n"));
-		goto again;
+	if (ctdb->do_checkpublicip) {
+		if (verify_ip_allocation(ctdb, pnn) != 0) {
+			DEBUG(DEBUG_ERR, (__location__ " Public IPs were inconsistent.\n"));
+			goto again;
+		}
 	}
 
 
diff --git a/server/ctdbd.c b/server/ctdbd.c
index b95aaca..351948c 100644
--- a/server/ctdbd.c
+++ b/server/ctdbd.c
@@ -47,6 +47,7 @@ static struct {
 	int         no_recmaster;
 	int         lvs;
 	int	    script_log_level;
+	int         no_publicipcheck;
 } options = {
 	.nlist = ETCDIR "/ctdb/nodes",
 	.transport = "tcp",
@@ -130,6 +131,7 @@ int main(int argc, const char *argv[])
 		{ "no-recmaster", 0, POPT_ARG_NONE, &options.no_recmaster, 0, "disable recmaster role on this node", NULL },
 		{ "lvs", 0, POPT_ARG_NONE, &options.lvs, 0, "lvs is enabled on this node", NULL },
 		{ "script-log-level", 0, POPT_ARG_INT, &options.script_log_level, DEBUG_ERR, "log level of event script output", NULL },
+		{ "nopublicipcheck", 0, POPT_ARG_NONE, &options.no_publicipcheck, 0, "dont check we have/dont have the correct public ip addresses", NULL },
 		POPT_TABLEEND
 	};
 	int opt, ret;
@@ -300,6 +302,8 @@ int main(int argc, const char *argv[])
 
 	ctdb->do_setsched = !options.no_setsched;
 
+	ctdb->do_checkpublicip = !options.no_publicipcheck;
+
 	if (getenv("CTDB_BASE") == NULL) {
 		/* setup a environment variable for the event scripts to use
 		   to find the installation directory */


-- 
CTDB repository


More information about the samba-cvs mailing list