Bind-9.4.0a5 + DLZ results in assertion failure on startup
Edward van der Jagt
edward at caret.nl
Thu May 11 08:57:55 UTC 2006
I just tried out the latest Bind release because I wanted the database
connection
to PostgreSQL. Compiling and running the Bind server (tiny test config)
goes fine.
However when I insert the dlz configuration into named.conf, whether using
the
Postgres or MySQL drivers, I get the same assertion error:
11-May-2006 10:32:57.449 starting BIND 9.4.0a5 -c
/usr/local/etc/named.conf -f -g -d 1
11-May-2006 10:32:57.464 loading configuration from
'/usr/local/etc/named.conf'
11-May-2006 10:32:57.466 listening on IPv4 interface lo, 127.0.0.1#53
11-May-2006 10:32:57.480 Loading 'test5.it' using driver mysql
11-May-2006 10:32:57.502 command channel listening on 127.0.0.1#953
11-May-2006 10:32:57.503 command channel listening on ::1#953
11-May-2006 10:32:57.503 ignoring config file logging statement due to -g
option
11-May-2006 10:32:57.504 resolver.c:6659: REQUIRE((((resolver) != ((void
*)0)) && (((const isc__magic_t *)(resolver))->magic == ((('R') << 24 |
('e') << 16 | ('s') << 8 | ('!')))))) failed
11-May-2006 10:32:57.520 exiting (due to assertion failure)
Aborted
I've examined the networkdata on the connection to Postgres, but find
there are no
queries done yet; only a connection is made. So the contents of my
database, which
I've only inserted some lines for testing, is not at fault.
My guess therefore is that there is some other config error in named.conf
which makes Bind
abort execution.
I've tried to search through the sources to find what is wrong but
couldn't find any
clear indication yet.
Anyone got any ideas what is wrong ?
Thanks.
My named.conf :
------------------------------------------
options {
directory "/usr/local/var/lib/named";
dump-file "/usr/local/var/log/named_dump.db";
statistics-file "/usr/local/var/log/named.stats";
listen-on-v6 { none; };
listen-on { 127.0.0.1; };
notify no;
};
view "internal" {
match-clients { 127.0.0.1; };
recursion yes;
# dlz configuration will be inserted here
zone "." in {
type hint;
file "root.hint";
};
zone "localhost" in {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
allow-update { none; };
};
};
------------------------------------------
And my dlz configurations are these: (copied from bind-dlz sourceforge
page)
------------------------------------------
dlz "test4.it" {
database "postgres 1
{host=127.0.0.1 port=5432 dbname=bind user=edward}
{select zone from dns_records where zone = '%zone%'}
{select ttl, type, mx_priority, case when lower(type)='txt' then '\"'
|| data || '\"' when lower(type)='soa' then data || ' ' ||
resp_person || ' '
|| serial || ' ' || refresh || ' ' || retry || ' ' || expire || '
' || minimum
else data end from dns_records where zone = '%zone%' and host =
'%record%'}";
};
------------------------------------------
dlz "test5.it" {
database "mysql
{host=localhost dbname=dns_data ssl=tRue}
{select zone from dns_records where zone = '%zone%'}
{select ttl, type, mx_priority, case when lower(type)='txt' then
concat('\"', data, '\"')
when lower(type) = 'soa' then concat_ws(' ', data, resp_person,
serial, refresh, retry, expire, minimum)
else data end from dns_records where zone = '%zone%' and host =
'%record%'}";
};
------------------------------------------
--
Edward
More information about the bind-users
mailing list