mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
plugin/{file,auto}: drop fsnotify (#1090)
* plugin/{file,auto}: drop fsnotify
Reload every minute. This is more deterministic then fsnotify. Also
other thing cropped up: sharing zone files between zone; there is only
1 fsnotify event and we need to fan out the reload to all zone files.
This is a large rewrite (which could still be done), for now, poll the
zone file on disk.
Give serial no change a special error type so we can check for this.
Improve the logging for reloading:
2017/09/19 07:34:39 [INFO] Successfully reloaded zone "miek.nl." in "db.miek.nl" with serial 128263060
2017/09/19 07:34:45 [INFO] Successfully reloaded zone "miek.nl." in "db.miek.nl" with serial 128263059
2017/09/19 07:34:51 [INFO] Successfully reloaded zone "miek.nl." in "db.miek.nl" with serial 128263060
Fixes #1013
* typo
This commit is contained in:
@@ -2,10 +2,10 @@ package test
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/coredns/coredns/plugin/file"
|
||||
"github.com/coredns/coredns/plugin/proxy"
|
||||
"github.com/coredns/coredns/plugin/test"
|
||||
"github.com/coredns/coredns/request"
|
||||
@@ -14,8 +14,7 @@ import (
|
||||
)
|
||||
|
||||
func TestZoneReload(t *testing.T) {
|
||||
t.Parallel()
|
||||
log.SetOutput(ioutil.Discard)
|
||||
file.TickTime = 1 * time.Second
|
||||
|
||||
name, rm, err := TempFile(".", exampleOrg)
|
||||
if err != nil {
|
||||
@@ -52,7 +51,7 @@ example.net:0 {
|
||||
// Remove RR from the Apex
|
||||
ioutil.WriteFile(name, []byte(exampleOrgUpdated), 0644)
|
||||
|
||||
time.Sleep(1 * time.Second) // fsnotify
|
||||
time.Sleep(2 * time.Second) // reload time
|
||||
|
||||
resp, err = p.Lookup(state, "example.org.", dns.TypeA)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user