Remove consensus timer check since it is invalid for 2 node clusters.
Instead document the consensus timeout parameter, and risks to
membership if consensus is less then token.
Index: exec/totemconfig.c
===================================================================
--- exec/totemconfig.c (revision 3004)
+++ exec/totemconfig.c (working copy)
@@ -564,13 +564,6 @@
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;
}
Index: man/corosync.conf.5
===================================================================
--- man/corosync.conf.5 (revision 3004)
+++ man/corosync.conf.5 (working copy)
@@ -333,6 +333,12 @@
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
_______________________________________________
Openais mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/openais