eventscript: put timeout inside ctdb_event_script_callback_v
authorRusty Russell <rusty@rustcorp.com.au>
Tue, 24 Nov 2009 00:39:46 +0000 (11:09 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Tue, 24 Nov 2009 00:39:46 +0000 (11:09 +1030)
Everyone uses the same timeout value, so just remove it from the API.
If we ever need variable timeouts, that might as well be central too.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/ctdb_private.h
server/ctdb_monitor.c
server/ctdb_recover.c
server/ctdb_takeover.c
server/eventscript.c

index bee921d3fd3d3b3424afdd535a6058a6890a353f..0ba8e3519026d3608197d87c5e03482cd1e4961c 100644 (file)
@@ -1328,11 +1328,10 @@ int32_t ctdb_control_set_tcp_tickle_list(struct ctdb_context *ctdb, TDB_DATA ind
 void ctdb_takeover_client_destructor_hook(struct ctdb_client *client);
 int ctdb_event_script(struct ctdb_context *ctdb, const char *fmt, ...) PRINTF_ATTRIBUTE(2,3);
 int ctdb_event_script_callback(struct ctdb_context *ctdb, 
-                              struct timeval timeout,
                               TALLOC_CTX *mem_ctx,
                               void (*callback)(struct ctdb_context *, int, void *),
                               void *private_data,
-                              const char *fmt, ...) PRINTF_ATTRIBUTE(6,7);
+                              const char *fmt, ...) PRINTF_ATTRIBUTE(5,6);
 void ctdb_release_all_ips(struct ctdb_context *ctdb);
 
 void set_nonblocking(int fd);
index efba8f9e14294dc2cc19e8cc3d4ba1eec239495f..2c97f45ab29cd2d7d55aeb67bc71206c4bb67143 100644 (file)
@@ -223,7 +223,6 @@ static void ctdb_check_health(struct event_context *ev, struct timed_event *te,
        
        if (!ctdb->done_startup) {
                ret = ctdb_event_script_callback(ctdb, 
-                                                timeval_set(ctdb->tunable.script_timeout, 0),
                                                 ctdb->monitor->monitor_context, ctdb_startup_callback, 
                                                 ctdb, "startup");
        } else {
@@ -248,7 +247,6 @@ static void ctdb_check_health(struct event_context *ev, struct timed_event *te,
                        return;
                } else {
                        ret = ctdb_event_script_callback(ctdb, 
-                                       timeval_set(ctdb->tunable.script_timeout, 0),
                                        ctdb->monitor->monitor_context, ctdb_health_callback,
                                        ctdb, "monitor");
                }
index ccac8e62e6d723f9c6dfc9afd4501bd007e2e222..1cd4835c82441f89eb11f3d3347870a8af041bf8 100644 (file)
@@ -962,9 +962,7 @@ int32_t ctdb_control_end_recovery(struct ctdb_context *ctdb,
 
        ctdb_disable_monitoring(ctdb);
 
-       ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
-                                        state, 
+       ret = ctdb_event_script_callback(ctdb, state,
                                         ctdb_end_recovery_callback, 
                                         state, "recovered");
 
@@ -1016,9 +1014,7 @@ int32_t ctdb_control_start_recovery(struct ctdb_context *ctdb,
 
        ctdb_disable_monitoring(ctdb);
 
-       ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
-                                        state, 
+       ret = ctdb_event_script_callback(ctdb, state,
                                         ctdb_start_recovery_callback, 
                                         state, "startrecovery");
 
@@ -1230,9 +1226,7 @@ int32_t ctdb_control_stop_node(struct ctdb_context *ctdb, struct ctdb_req_contro
 
        ctdb_disable_monitoring(ctdb);
 
-       ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
-                                        state, 
+       ret = ctdb_event_script_callback(ctdb, state,
                                         ctdb_stop_node_callback, 
                                         state, "stopped");
 
index a140578abed4633915090e43160e8e560d7cb750..d53f2d47b0ea6bcf7396a0473d9a4b17abc6fd83 100644 (file)
@@ -235,7 +235,6 @@ int32_t ctdb_control_takeover_ip(struct ctdb_context *ctdb,
                vnn->iface));
 
        ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
                                         state, takeover_ip_callback, state,
                                         "takeip %s %s %u",
                                         vnn->iface, 
@@ -391,7 +390,6 @@ int32_t ctdb_control_release_ip(struct ctdb_context *ctdb,
        state->vnn   = vnn;
 
        ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
                                         state, release_ip_callback, state,
                                         "releaseip %s %s %u",
                                         vnn->iface, 
@@ -2094,7 +2092,6 @@ int32_t ctdb_control_del_public_address(struct ctdb_context *ctdb, TDB_DATA inda
                        DLIST_REMOVE(ctdb->vnn, vnn);
 
                        ret = ctdb_event_script_callback(ctdb, 
-                                        timeval_set(ctdb->tunable.script_timeout, 0),
                                         mem_ctx, delete_ip_callback, mem_ctx,
                                         "releaseip %s %s %u",
                                         vnn->iface, 
index f32ffc02ba25593ee427b9e6e01beda7f08a3b0c..c89d402cf7ecc1be15ca06746e6e7e1586cf92a7 100644 (file)
@@ -735,7 +735,6 @@ static int event_script_destructor(struct ctdb_event_script_state *state)
   finished
  */
 static int ctdb_event_script_callback_v(struct ctdb_context *ctdb, 
-                                       struct timeval timeout,
                                        void (*callback)(struct ctdb_context *, int, void *),
                                        void *private_data,
                                        const char *fmt, va_list ap)
@@ -784,7 +783,7 @@ static int ctdb_event_script_callback_v(struct ctdb_context *ctdb,
        state->callback = callback;
        state->private_data = private_data;
        state->options = talloc_vasprintf(state, fmt, ap);
-       state->timeout = timeout;
+       state->timeout = timeval_set(ctdb->tunable.script_timeout, 0);
        if (state->options == NULL) {
                DEBUG(DEBUG_ERR, (__location__ " could not allocate state->options\n"));
                talloc_free(state);
@@ -846,7 +845,6 @@ static int ctdb_event_script_callback_v(struct ctdb_context *ctdb,
   finished
  */
 int ctdb_event_script_callback(struct ctdb_context *ctdb, 
-                              struct timeval timeout,
                               TALLOC_CTX *mem_ctx,
                               void (*callback)(struct ctdb_context *, int, void *),
                               void *private_data,
@@ -856,7 +854,7 @@ int ctdb_event_script_callback(struct ctdb_context *ctdb,
        int ret;
 
        va_start(ap, fmt);
-       ret = ctdb_event_script_callback_v(ctdb, timeout, callback, private_data, fmt, ap);
+       ret = ctdb_event_script_callback_v(ctdb, callback, private_data, fmt, ap);
        va_end(ap);
 
        return ret;
@@ -890,7 +888,6 @@ int ctdb_event_script(struct ctdb_context *ctdb, const char *fmt, ...)
 
        va_start(ap, fmt);
        ret = ctdb_event_script_callback_v(ctdb, 
-                       timeval_set(ctdb->tunable.script_timeout, 0),
                        event_script_callback, &status, fmt, ap);
        va_end(ap);
 
@@ -957,8 +954,7 @@ int32_t ctdb_run_eventscripts(struct ctdb_context *ctdb,
 
        ctdb_disable_monitoring(ctdb);
 
-       ret = ctdb_event_script_callback(ctdb, 
-                        timeval_set(ctdb->tunable.script_timeout, 0),
+       ret = ctdb_event_script_callback(ctdb,
                         state, run_eventscripts_callback, state,
                         "%s", (const char *)indata.dptr);