bind 9.3.1 thread issues on FreeBSD 5.3R/amd64
Mars G. Miro
marsgmiro at gmail.com
Wed May 25 02:47:45 PDT 2005
Yo list!
I think I'm seeing a problem about bind9.3.1 on FreeBSD 5.3R/AMD64.
This is addressed by setting WITHOUT_BIND9_THREADS=true when compiling
the port. This also doesn't happen on FreeBSD 5.4R/AMD64.
The problem manifests when shutting down the named daemon where it
just would not die gracefully (you have to kill -9 it).
Here are the necessary steps to reproduce it:
1) install FreeBSD5.3R/AMD64
2) install bind9.3.1 from ports (set WITH_PORT_REPLACES_BASE_BIND9)
3) configure a simple resolver (# cd /var/named/etc/namedb && sh
make-localhost)
4) start named server ( # /etc/rc.d/named start or # named -u bind -t
/var/named )
5) test some dns queries ( dig, nslookup etc)
6) kill named server ( # /etc/rc.d/named stop or # killall named ),
[ this is where it happens ... ]
if logging is configured, you'd see something like:
5-May-2005 08:44:32.348 database: debug 1: done free_rbtdb(0.0.127.IN-ADDR.ARPA)
25-May-2005 08:44:32.348 general: debug 3: zone_shutdown: zone
authors.bind/CH: shutting down
25-May-2005 08:44:32.348 general: debug 3: zone_shutdown: zone
version.bind/CH: shutting down
25-May-2005 08:44:32.349 client: debug 3: client @0x739400: shutdown
25-May-2005 08:44:32.349 client: debug 3: client @0x739400: free
25-May-2005 08:44:32.349 client: debug 3: client @0x739c00: shutdown
25-May-2005 08:44:32.349 client: debug 3: client @0x739c00: accept
failed: operation canceled
25-May-2005 08:44:32.349 client: debug 3: client @0x739c00: free
25-May-2005 08:44:32.349 general: debug 3: clientmgr @0x6feb80:
clientmgr_destroy
25-May-2005 08:44:32.349 resolver: debug 3: res 0x73ae00: detach
25-May-2005 08:44:32.349 resolver: debug 3: res 0x73ae00: destroy
25-May-2005 08:44:32.349 general: debug 3: dns_requestmgr_detach:
0x7e1000: eref 0 iref 0
25-May-2005 08:44:32.349 general: debug 3: mgr_destroy
25-May-2005 08:44:32.349 database: debug 1: calling free_rbtdb(.)
25-May-2005 08:44:32.349 database: debug 1: done free_rbtdb(.)
25-May-2005 08:44:32.349 database: debug 1: calling free_rbtdb(.)
25-May-2005 08:44:32.349 database: debug 1: done free_rbtdb(.)
25-May-2005 08:44:32.351 resolver: debug 3: res 0x7e1500: detach
25-May-2005 08:44:32.351 resolver: debug 3: res 0x7e1500: destroy
25-May-2005 08:44:32.351 general: debug 3: dns_requestmgr_detach:
0x7f4700: eref 0 iref 0
25-May-2005 08:44:32.351 general: debug 3: mgr_destroy
25-May-2005 08:44:32.351 database: debug 1: calling free_rbtdb(.)
25-May-2005 08:44:32.351 database: debug 1: done free_rbtdb(.)
but then the process is still there:
root 31645 0.0 0.1 3580 844 ?? SsJ 4:45AM 0:00.02
/usr/sbin/syslogd -l /var/run/log -l /var/named/var/run/log -ss
bind 39312 0.0 0.5 9752 5432 ?? IsJ 8:44AM 0:00.02
/usr/sbin/named -u bind -t /var/named
The only way to kill it is kill -9 the pid.
Somebody also had some similar issues like this (slapd):
http://www.monkey.org/freebsd/archive/freebsd-amd64/200404/msg00076.html
w/c is FreeBSD 5.2.X on AMD64.
And, as I've said, this doesn't manifest on FreeBSD5.4R/AMD64 nor
5.3/5.4 i386 and the work-around is to compile the port
WITHOUT_BIND9_THREADS=true,
So is anyone else also experiencing this problem?
Thanks.
cheers
mars
More information about the freebsd-amd64
mailing list