tweak some timeouts so that we do trigger a banning even if the control hangs/timesout
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Fri, 24 Apr 2009 04:41:21 +0000 (14:41 +1000)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Fri, 24 Apr 2009 04:45:07 +0000 (14:45 +1000)
server/ctdb_recoverd.c
server/ctdb_tunables.c

index 4d9f8a70cf81dd59b8d330dd5c7b5dc5f8a5e72c..c6d0a7a5f4a22725c875c0475f7bf95db755d739 100644 (file)
@@ -1346,9 +1346,9 @@ static int do_recovery(struct ctdb_recoverd *rec,
 
        if (rec->culprit_counter > 2*nodemap->num) {
                DEBUG(DEBUG_NOTICE,("Node %u has caused %u recoveries in %.0f seconds - banning it for %u seconds\n",
-                        culprit, rec->culprit_counter, timeval_elapsed(&rec->first_recover_time),
+                        rec->last_culprit, rec->culprit_counter, timeval_elapsed(&rec->first_recover_time),
                         ctdb->tunable.recovery_ban_period));
-               ctdb_ban_node(rec, culprit, ctdb->tunable.recovery_ban_period);
+               ctdb_ban_node(rec, rec->last_culprit, ctdb->tunable.recovery_ban_period);
        }
 
        if (!ctdb_recovery_lock(ctdb, true)) {
index 31ec89f82e4b439b3be2e65500f85acb507a0989..330ab1999c3ff635332c0194b02940a6d5786bd5 100644 (file)
@@ -31,7 +31,7 @@ static const struct {
        { "KeepaliveInterval",    5,  offsetof(struct ctdb_tunable, keepalive_interval) },
        { "KeepaliveLimit",       5,  offsetof(struct ctdb_tunable, keepalive_limit) },
        { "MaxLACount",           7,  offsetof(struct ctdb_tunable, max_lacount) },
-       { "RecoverTimeout",      30,  offsetof(struct ctdb_tunable, recover_timeout) },
+       { "RecoverTimeout",      20,  offsetof(struct ctdb_tunable, recover_timeout) },
        { "RecoverInterval",      1,  offsetof(struct ctdb_tunable, recover_interval) },
        { "ElectionTimeout",      3,  offsetof(struct ctdb_tunable, election_timeout) },
        { "TakeoverTimeout",      5,  offsetof(struct ctdb_tunable, takeover_timeout) },
@@ -39,7 +39,7 @@ static const struct {
        { "TickleUpdateInterval",20,  offsetof(struct ctdb_tunable, tickle_update_interval) },
        { "EventScriptTimeout",  20,  offsetof(struct ctdb_tunable, script_timeout) },
        { "EventScriptBanCount",  5,  offsetof(struct ctdb_tunable, script_ban_count) },
-       { "RecoveryGracePeriod", 60,  offsetof(struct ctdb_tunable, recovery_grace_period) },
+       { "RecoveryGracePeriod", 120,  offsetof(struct ctdb_tunable, recovery_grace_period) },
        { "RecoveryBanPeriod",  300,  offsetof(struct ctdb_tunable, recovery_ban_period) },
        { "DatabaseHashSize", 10000,  offsetof(struct ctdb_tunable, database_hash_size) },
        { "DatabaseMaxDead",      5,  offsetof(struct ctdb_tunable, database_max_dead) },