Troubles with BIND + r276630 (/r277317 MFC)

Konstantin Belousov kostikbel at gmail.com
Fri Feb 13 08:44:50 UTC 2015


On Thu, Feb 12, 2015 at 04:59:09PM -0600, Matthew D. Fuller wrote:
> I've been setting up a stable/10 system (currently r278451, ~early
> this week), and had some disturbing troubles out of BIND (net/bind910,
> but also tested bind99).  Sporadically, on restart, I get errors like
> 
> 
> Feb 12 10:42:37 dns named[4071]: dns_master_load: /usr/local/etc/namedb/master/empty.db:1: isc_lex_gettoken() failed: I/O error
> Feb 12 10:42:37 dns named[4071]: dns_master_load: /usr/local/etc/namedb/master/empty.db:1: I/O error
> Feb 12 10:42:37 dns named[4071]: zone 112.100.in-addr.arpa/IN: loading from master file /usr/local/etc/namedb/master/empty.db failed: I/O error
> Feb 12 10:42:37 dns named[4071]: zone 112.100.in-addr.arpa/IN: not loaded due to errors.
> 
> 
> and similar.  Nothing wrong with the files, and it's wildly
> inconsistent.  Easy to reproduce; just hammering 'service named
> restart' while tail -f'ing the messages log will show some startups
> going problem-free, while others will get random errors in random
> files.  I can also reproduce it on my -CURRENT workstation (r278359,
> ~late last week), but not on several stable/10 systems of late-Dec
> vintage.
> 
> In some testing on the -CURRENT box, if I build libc/libthr as of
> r276629 and do LD_LIBRARY_PATH hackery (and obviously not the
> 'service' wrapper) to use them, I can kick the reload without ever
> getting troubles (tried at least a hundred times).  Going to 276630,
> or using the system libs, it'll happen sporadically (maybe once a
> dozen or so on average?).
> 
> 
> So far, I haven't seen anything odd in anything but BIND.  I was
> running a mid-Jan -CURRENT before this for a couple weeks too, so
> there should have been time for Firefox to throw a hissy fit or
> something, but no hint of trouble.  So it's not clear whether the
> problem is in the libc/libthr changes or in BIND 9.9 and 9.10, but
> certainly something between the two is unhappy...

Start with ktrace/kdump around the place where the error is thrown out.

Does 'reload' involves full process restart, or only reinitialization
of the existing program ?


More information about the freebsd-threads mailing list