]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MAJOR: dns: disabled servers through SRV records never recover
authorBaptiste Assmann <bedis9@gmail.com>
Tue, 4 Aug 2020 08:57:21 +0000 (10:57 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 5 Aug 2020 19:48:23 +0000 (21:48 +0200)
commit87138c3524bc4242dc48cfacba82d34504958e78
tree3b1412339fbb378946309bd8add22aa119884ecc
parentcde83033d018add80063df2ee314b41a2ac5014f
BUG/MAJOR: dns: disabled servers through SRV records never recover

A regression was introduced by 13a9232ebc63fdf357ffcf4fa7a1a5e77a1eac2b
when I added support for Additional section of the SRV responses..

Basically, when a server is managed through SRV records additional
section and it's disabled (because its associated Additional record has
disappeared), it never leaves its MAINT state and so never comes back to
production.
This patch updates the "snr_update_srv_status()" function to clear the
MAINT status when the server now has an IP address and also ensure this
function is called when parsing Additional records (and associating them
to new servers).

This can cause severe outage for people using HAProxy + consul (or any
other service registry) through DNS service discovery).

This should fix issue #793.
This should be backported to 2.2.
src/dns.c
src/server.c