From 533c3e053293941d2a9484b495e78d45f478bb08 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Tue, 24 Nov 2009 11:09:46 +1030 Subject: [PATCH] eventscript: put timeout inside ctdb_event_script_callback_v 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 --- include/ctdb_private.h | 3 +-- server/ctdb_monitor.c | 2 -- server/ctdb_recover.c | 12 +++--------- server/ctdb_takeover.c | 3 --- server/eventscript.c | 10 +++------- 5 files changed, 7 insertions(+), 23 deletions(-) diff --git a/include/ctdb_private.h b/include/ctdb_private.h index 9d033a9d..e3ebb8ac 100644 --- a/include/ctdb_private.h +++ b/include/ctdb_private.h @@ -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); diff --git a/server/ctdb_monitor.c b/server/ctdb_monitor.c index efba8f9e..2c97f45a 100644 --- a/server/ctdb_monitor.c +++ b/server/ctdb_monitor.c @@ -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"); } diff --git a/server/ctdb_recover.c b/server/ctdb_recover.c index ccac8e62..1cd4835c 100644 --- a/server/ctdb_recover.c +++ b/server/ctdb_recover.c @@ -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"); diff --git a/server/ctdb_takeover.c b/server/ctdb_takeover.c index a140578a..d53f2d47 100644 --- a/server/ctdb_takeover.c +++ b/server/ctdb_takeover.c @@ -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, diff --git a/server/eventscript.c b/server/eventscript.c index 2df941d2..801ff4ec 100644 --- a/server/eventscript.c +++ b/server/eventscript.c @@ -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) @@ -783,7 +782,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); @@ -845,7 +844,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, @@ -855,7 +853,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; @@ -889,7 +887,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); @@ -956,8 +953,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); -- 2.34.1