Incremental Updates

Peter A. Friend pafriend at octavian.org
Fri Aug 26 16:37:21 UTC 2005


On Aug 26, 2005, at 5:32 AM, Erik Rozendaal wrote:

> How much time does zonec currently spend parsing and compiling the
> database?  A quick test run shows that parsing and compiling the
> database is about 2.5 times slower than loading the database. So that
> will be about the maximum amount that can be gained with some kind of
> incremental updates.

Well as an example, parsing and building that database for over  
300,000 zones can take an hour, so just making a change to one zone  
isn't possible, and has to wait for the next build. What would be  
ideal is to be able to take an existing built database, parse the  
zone files that have changed, and update the database. I have looked  
at the code, and the problem I have is that there is no way to free a  
pointer within a region, and I also don't see any delete routines for  
the red black tree stuff. This leaves stuffing the records into their  
existing entry (for a zone that was already in the database), and I  
haven't figured out a safe way to do that yet. Once the "diff" is  
applied, then the database file can be written out again, and  
reloaded by nsd.

Peter



More information about the nsd-users mailing list