Rename the tunable EventScriptBanCount to EventScriptTimeoutCount
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Mon, 14 Dec 2009 04:53:23 +0000 (15:53 +1100)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Mon, 14 Dec 2009 04:53:23 +0000 (15:53 +1100)
since we no longer ban nodes when dodgy scripts continue to hang.

We now only mark nodes as unhealthy if monitor events fail or timeout. Never ban.

include/ctdb_private.h
server/ctdb_monitor.c
server/ctdb_tunables.c

index a5a931f1c5c80032e634ebb7d548012f014de3d7..e490b21a8cd42211a8806d870d3916210b9d1701 100644 (file)
@@ -103,7 +103,7 @@ struct ctdb_tunable {
        uint32_t monitor_interval;
        uint32_t tickle_update_interval;
        uint32_t script_timeout;
-       uint32_t script_ban_count; /* ban after this many consec timeouts*/
+       uint32_t script_timeout_count; /* allow dodgy scripts to hang this many times in a row before we mark the node unhealthy */
        uint32_t recovery_grace_period;
        uint32_t recovery_ban_period;
        uint32_t database_hash_size;
index 54cdac1b62527240bd164691fb2d3f37703f7e86..2bf5dcb99f5430c3c137af34dc53f863082301b2 100644 (file)
@@ -126,8 +126,8 @@ static void ctdb_health_callback(struct ctdb_context *ctdb, int status, void *p)
        if (status == -ETIME) {
                ctdb->event_script_timeouts++;
 
-               if (ctdb->event_script_timeouts > ctdb->tunable.script_ban_count) {
-                       DEBUG(DEBUG_ERR, ("Maximum timeout count %u reached for eventscript. Making node unhealthy\n", ctdb->tunable.script_ban_count));
+               if (ctdb->event_script_timeouts >= ctdb->tunable.script_timeout_count) {
+                       DEBUG(DEBUG_ERR, ("Maximum timeout count %u reached for eventscript. Making node unhealthy\n", ctdb->tunable.script_timeout_count));
                } else {
                        /* We pretend this is OK. */
                        goto after_change_status;
index e737e200dd397af3b38dce067da2a75ef2f3a1cc..872260384bdb1663eda9835ce85466d425caec96 100644 (file)
@@ -38,7 +38,7 @@ static const struct {
        { "MonitorInterval",     15,  offsetof(struct ctdb_tunable, monitor_interval) },
        { "TickleUpdateInterval",20,  offsetof(struct ctdb_tunable, tickle_update_interval) },
        { "EventScriptTimeout",  30,  offsetof(struct ctdb_tunable, script_timeout) },
-       { "EventScriptBanCount", 10,  offsetof(struct ctdb_tunable, script_ban_count) },
+       { "EventScriptTimeoutCount", 1,  offsetof(struct ctdb_tunable, script_timeout_count) },
        { "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) },