Comments (4)
Hi Anand. Yes that is right, fixed it in commit 784600e where it fetches immediately, and then if that needs retries, the already existing logic for spreading retries can spread load. This is also how it works when NSD is started without files. So this fix makes all the zones get fetched immediately.
from nsd.
Hi Anand,
Thanks for the report! I added the logic so that when it reads in the xfrdfile it checks if the timeout is in the past. If so, it attempts to refetch the zone contents. Because that probably affects all of the zones in the file, it spreads the load over a couple of seconds with a random(10) second delay. That works in a test setup for me.
Best regards, Wouter
from nsd.
Hi Wouter! Thanks for the fix. Actually I was aware of this issue for ages, but kept forgetting to open a report. Today, when I built 4.2.1 for testing, and noticed it again, I decided to open the report before I forgot again. I will try to rebuild with this patch and report to you, or just test with 4.2.2 comes out.
from nsd.
Hi Wouter. I tried this today, and it works as you described. NSD starts, notices that the zones are way out of date, and schedules refresh for them with a random delay of up to 10 seconds. I guess this is fine, but in reality, there is probably no need for the delay, because it would be fine if NSD just immediately refreshes the zones. If you start NSD without any zone files or xfrd.state, then it XFRs all the slaves zones in immediately. It doesn't make too much sense to add a random 10s delay for this specific case of extended downtime. For consistency, if you're going to add a random delay, then it should be for all cases, to avoid flooding a master server.
from nsd.
Related Issues (20)
- nsd should not chown its PID file HOT 25
- bundled configure file for 4.9.0 release is problematic HOT 5
- Add zones without nsd-control HOT 4
- Clarify the purpose of contrib/bug390.patch HOT 2
- Report failure of primaries with secondary zones HOT 2
- Add `domain_table_insert` that takes a domain name in wire format
- build fails due to missing simdzone (git head) HOT 2
- TCP accept queues number HOT 6
- Build errors for 4.10.0rc1 HOT 11
- multiple "xfrd: zone %s written received XFR packet from %s with serial %u to " logged HOT 3
- RFC8482 behavior documentation HOT 1
- Minor recursive Makefile issue
- mutual tls authentication is not complete HOT 2
- nsd verification processing hangs, activity stopped for 20-30 minutes HOT 3
- NSD 4.10.0's `nsd-checkzone` cannot read zonefiles from `stdin`
- are flex and bison still required? HOT 1
- nsd 4.10.0 x86 builds failed HOT 2
- zonefile with $include relative path stopped working HOT 1
- Update simdzone HOT 2
- Assertion `token->code == RIGHT_PAREN' failed HOT 14
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nsd.