]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MAJOR: peers: fix current table pointer not re-initialized on session release.
authorEmeric Brun <ebrun@haproxy.com>
Fri, 21 Aug 2015 10:00:30 +0000 (12:00 +0200)
committerWilly Tarreau <w@1wt.eu>
Fri, 21 Aug 2015 12:24:32 +0000 (14:24 +0200)
This bug causes malfunctions after re-connect. For instance the re-sync fails.

src/peers.c

index b4f6b979249dbd2905495661cfb8a9e596933c62..f628a7f36c174bc3377deb6b1b9eb2886e216edf 100644 (file)
@@ -457,6 +457,8 @@ static void peer_session_release(struct appctx *appctx)
        /* peer session identified */
        if (peer) {
                if (peer->stream == s) {
+                       /* Re-init current table pointers to force announcement on re-connect */
+                       peer->remote_table = peer->last_local_table = NULL;
                        peer->stream = NULL;
                        peer->appctx = NULL;
                        if (peer->flags & PEER_F_LEARN_ASSIGN) {