mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-09 23:39:55 +00:00
BUG/MEDIUM: email-alert: don't set server check status from a email-alert task
This avoids possible 100% cpu usage deadlock on a EMAIL_ALERTS_LOCK and avoids sending lots of emails when 'option log-health-checks' is used. It is avoided to change the server state and possibly queue a new email while processing the email alert by setting check->status to HCHK_STATUS_UNKNOWN which will exit the set_server_check_status(..) early. This needs to be backported to 1.8.
This commit is contained in:
parent
f2b5d75ae2
commit
1714b9f286
@ -3145,7 +3145,7 @@ static struct task *process_email_alert(struct task *t)
|
||||
t->expire = now_ms;
|
||||
check->server = alert->srv;
|
||||
check->tcpcheck_rules = &alert->tcpcheck_rules;
|
||||
check->status = HCHK_STATUS_INI;
|
||||
check->status = HCHK_STATUS_UNKNOWN; // the UNKNOWN status is used to exit set_server_check_status(.) early
|
||||
check->state |= CHK_ST_ENABLED;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user