[nsd-users] NSD database memory usage

Anand Buddhdev anandb at ripe.net
Tue Feb 6 09:47:00 UTC 2018

Hi Antti,

This is certainly a problem, and I'm sure the developers will be happy
to investigate it with you.

However, I'd like to suggest that you don't use the database mode. If
you set:

database: ""

in your nsd.conf, then nsd will load the zone from the zonefile into
RAM, and won't bother compiling the nsd.db file. You don't really gain
anything with the database file, and I've been advocating for the
database mode to be dropped completely in future versions of nsd.

By the way, if you or the developers find the problem, please do let us
know here, because I'm also curious about it.


On 06/02/2018 09:08, Antti Ristimäki wrote:
> Hello,
> We have an installation, where NSD (version 4.1.19) acts as a hidden master for the public DNS servers. NSD has only one large zone configured and the zone is periodically signed every 20 minutes and after each re-signing, "nsd-control reload <zone>" is given so that the NSD process reloads the new zone from the zonefile and notifies the slaves. However, we noticed that the database memory usage increases after every reload, finally resulting in memory allocation failure. We stat the memory usage by running "nsd-control stats_noreset" every minute and in the graph [1] one can see the increase in size.db.mem after each reload. We don't see similar behaviour with for example xfrd process memory usage.
> We have worked around the issue by restarting the NSD process periodically, but do you have any ideas about the possible root cause and a more long term solution?
> [1] http://nxdomain.fi/NSD_db_mem.png

More information about the nsd-users mailing list