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;
Packager: Samba Team <samba@samba.org>
Name: ctdb
Version: 1.0
-Release: 65
+Release: 66
Epoch: 0
License: GNU GPL version 3
Group: System Environment/Daemons
%{_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)
/* 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;
+ }
}
int no_recmaster;
int lvs;
int script_log_level;
+ int no_publicipcheck;
} options = {
.nlist = ETCDIR "/ctdb/nodes",
.transport = "tcp",
{ "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;
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 */