mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-07 07:37:02 +02:00
BUG/MINOR: checks: Reschedule check on observe mode only if fastinter is set
On observe mode, if a server is marked as DOWN, the server's health-check is rescheduled using the fastinter timeout if the new expiration date is newer that the current one. But this must only be performed if the fastinter timeout is defined. Internally, tick_is_lt() function only checks the date and does not perform any verification on the provided args. Thus, we must take care of it. However, it is possible to disable the server health-check by setting its task expiration date to TICK_ETERNITY. This patch must be backported as far as 2.2. It is related to
This commit is contained in:
parent
92017a3215
commit
ea86083718
@ -716,7 +716,7 @@ void __health_adjust(struct server *s, short status)
|
||||
s->consecutive_errors = 0;
|
||||
_HA_ATOMIC_INC(&s->counters.failed_hana);
|
||||
|
||||
if (tick_is_lt(expire, s->check.task->expire)) {
|
||||
if (tick_isset(expire) && tick_is_lt(expire, s->check.task->expire)) {
|
||||
/* requeue check task with new expire */
|
||||
task_schedule(s->check.task, expire);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user