MINOR: proxy/listener: support for additional PAUSED state
This patch is a prerequisite for #1626.
Adding PAUSED state to the list of available proxy states.
The flag is set when the proxy is paused at runtime (pause_listener()).
It is cleared when the proxy is resumed (resume_listener()).
It should be backported to 2.6, 2.5 and 2.4
diff --git a/src/listener.c b/src/listener.c
index 98d384c..bddc29f 100644
--- a/src/listener.c
+++ b/src/listener.c
@@ -481,6 +481,8 @@
listener_set_state(l, LI_PAUSED);
if (px && !px->li_ready) {
+ /* PROXY_LOCK is required */
+ proxy_cond_pause(px);
ha_warning("Paused %s %s.\n", proxy_cap_str(px->cap), px->id);
send_log(px, LOG_WARNING, "Paused %s %s.\n", proxy_cap_str(px->cap), px->id);
}
@@ -540,6 +542,8 @@
done:
if (was_paused && !px->li_paused) {
+ /* PROXY_LOCK is required */
+ proxy_cond_resume(px);
ha_warning("Resumed %s %s.\n", proxy_cap_str(px->cap), px->id);
send_log(px, LOG_WARNING, "Resumed %s %s.\n", proxy_cap_str(px->cap), px->id);
}