From 8fa6f4f58ee3cb0cfac5f22487ab7f34c7ab9b71 Mon Sep 17 00:00:00 2001 From: Steven Dake Date: Tue, 27 Jul 2010 19:00:37 +0000 Subject: [PATCH] Remove consensus check for two node cluster cases which can have smaller consensus values. Document in man page the behavior of consensus. git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3005 fd59a12c-fef9-0310-b244-a6a79926bd2f --- exec/totemconfig.c | 7 ------- man/corosync.conf.5 | 6 ++++++ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/exec/totemconfig.c b/exec/totemconfig.c index 9128bdd2..381cf4fb 100644 --- a/exec/totemconfig.c +++ b/exec/totemconfig.c @@ -564,13 +564,6 @@ int totem_config_validate ( goto parse_error; } - if (totem_config->consensus_timeout < 1.2 * totem_config->token_timeout) { - snprintf (local_error_reason, sizeof(local_error_reason), - "The consensus timeout parameter (%d ms) must be atleast 1.2 * token (%d ms).", - totem_config->consensus_timeout, (int) ((float)1.2 * totem_config->token_timeout)); - goto parse_error; - } - if (totem_config->merge_timeout == 0) { totem_config->merge_timeout = MERGE_TIMEOUT; } diff --git a/man/corosync.conf.5 b/man/corosync.conf.5 index 15cff180..5d3f7b5e 100644 --- a/man/corosync.conf.5 +++ b/man/corosync.conf.5 @@ -333,6 +333,12 @@ achieved before starting a new round of membership configuration. The minimum value for consensus must be 1.2 * token. This value will be automatically calculated at 1.2 * token if the user doesn't specify a consensus value. +For two node clusters, a consensus larger then the join timeout but less then +token is safe. For three node or larger clusters, consensus should be larger +then token. There is an increasing risk of odd membership changes, which stil +guarantee virtual synchrony, as node count grows if consensus is less than +token. + The default is 1200 milliseconds. .TP