mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-05-11 04:08:11 +00:00
BUG/MEDIUM: peer: Notify the applet won't consume data when it waits for sync
When the peer applet is waiting for a synchronisation with the global sync task, we must notify it won't consume data. Otherwise, if some data are already waiting in the input buffer, the applet will be woken up in loop and this wil trigger the watchdog. Once synchronized, the applet is woken up. In that case, the peer applet must indicate it is going to consume data again. This patch should fix the issue #2656. It must be backported to 3.0.
This commit is contained in:
parent
184f16ded7
commit
78b8b60030
@ -3080,8 +3080,11 @@ switchstate:
|
||||
}
|
||||
}
|
||||
|
||||
if (curpeer->flags & PEER_F_WAIT_SYNCTASK_ACK)
|
||||
if (curpeer->flags & PEER_F_WAIT_SYNCTASK_ACK) {
|
||||
applet_wont_consume(appctx);
|
||||
goto out;
|
||||
}
|
||||
applet_will_consume(appctx);
|
||||
|
||||
/* local peer is assigned of a lesson, start it */
|
||||
if (curpeer->learnstate == PEER_LR_ST_ASSIGNED && curpeer->local)
|
||||
|
Loading…
Reference in New Issue
Block a user