diff options
author | 2019-05-04 21:06:25 +0100 | |
---|---|---|
committer | 2019-05-04 16:06:25 -0400 | |
commit | 076b8d4fbae050f1f04475ad47709de872899374 (patch) | |
tree | 0dff3da9dbf1e6346babfda10e29749cb4514a92 /SECURITY-RELEASE-PROCESS.md | |
parent | 890cdb5cab8bb898dd048d853791ec82e28003ad (diff) | |
download | coredns-076b8d4fbae050f1f04475ad47709de872899374.tar.gz coredns-076b8d4fbae050f1f04475ad47709de872899374.tar.zst coredns-076b8d4fbae050f1f04475ad47709de872899374.zip |
plugin/health: add OnRestartFailed (#2812)
Add OnReStartFailed which makes the health plugin stay up if the
Corefile is corrupt and we revert to the previous version.
Also needs a fix for the channel handling
See #2659
Testing it will log the following when restarting with a corrupted
Corefile
~~~
2019-05-04T18:01:59.431Z [INFO] linux/amd64, go1.12.4,
CoreDNS-1.5.0
linux/amd64, go1.12.4,
[INFO] SIGUSR1: Reloading
[INFO] Reloading
[ERROR] Restart failed: Corefile:5 - Error during parsing: Unknown directive 'bdhfhdhj'
[ERROR] SIGUSR1: starting with listener file descriptors: Corefile:5 - Error during parsing: Unknown directive 'bdhfhdhj'
~~~
After which the curl still works.
This also needed a change to reset the channel used for the metrics
go-routine which gets closed on shutdown, otherwise you'll see:
~~~
^C[INFO] SIGINT: Shutting down
panic: close of closed channel
goroutine 90 [running]:
github.com/coredns/coredns/plugin/health.(*health).OnFinalShutdown(0xc000089bc0, 0xc000063d88, 0x4afe6d)
~~~
Signed-off-by: Miek Gieben <miek@miek.nl>
Diffstat (limited to 'SECURITY-RELEASE-PROCESS.md')
0 files changed, 0 insertions, 0 deletions