[ktm at it.is.rice.edu: Re: [Pdns-users] PowerDNS version 2.9.20_v563 slave problem]
Kenneth Marshall
ktm at it.is.rice.edu
Tue Jan 31 14:35:32 UTC 2006
Bert,
Sorry, I forgot to cc: the list. The original message is below. I
have done a little more debugging of the AXFR problem by upping the
PostgreSQL log level. Here are the commands that are sent to the DB
including the problematic one resulting in the error:
LOG: duration: 22.147 ms statement: select id,name,master,last_check,notified_serial,type from domains where name='ruf.rice.edu'
LOG: duration: 3.797 ms statement: select content,ttl,prio,type,domain_id,name from records where type='SOA' and name='ruf.rice.edu'
LOG: duration: 0.482 ms statement: begin
LOG: duration: 1.617 ms statement: delete from records where domain_id=80
LOG: duration: 10.027 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('rice.edu postmaster.rice.edu 90 600 900 3600000 21600',21600,0,'SOA',80,'ruf.rice.edu')
LOG: duration: 1.945 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('moe.rice.edu',21600,0,'NS',80,'ruf.rice.edu')
LOG: duration: 0.247 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('hydrant.ruf.rice.edu',21600,0,'NS',80,'ruf.rice.edu')
LOG: duration: 0.639 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('128.42.31.101',21600,0,'A',80,'ruf.rice.edu')
LOG: duration: 0.577 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('mail.rice.edu',21600,10,'MX',80,'ruf.rice.edu')
LOG: duration: 0.395 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('moe.rice.edu',21600,20,'MX',80,'ruf.rice.edu')
LOG: duration: 0.453 ms statement: insert into records (content,ttl,prio,type,domain_id,name) values ('128.42.31.200',21600,0,'A',80,'backup.ruf.rice.edu')
ERROR: invalid UTF-8 byte sequence detected near byte 0x80
STATEMENT: insert into records (content,ttl,prio,type,domain_id,name) values ('<80>*^_Ã^F',21600,0,'#1035',80,'backup.ruf.rice.edu')
LOG: unexpected EOF on client connection
Does anyone have any ideas one how the last statement could be generated?
Increasing the loglevel does not result in any more information from the
pdns_server.
Ken
----- Forwarded message from Kenneth Marshall <ktm at it.is.rice.edu> -----
Date: Mon, 30 Jan 2006 16:28:09 -0600
From: Kenneth Marshall <ktm at it.is.rice.edu>
To: bert hubert <bert.hubert at netherlabs.nl>
Subject: Re: [Pdns-users] PowerDNS version 2.9.20_v563 slave problem
The latest 2.9.20.20060122.563 snapshot still does not have the
typedef for u_int8_t which causes and error on Solaris 8. Then
the pdns_server on Solaris 8 fails to link with the following error:
/bin/bash ../libtool --tag=CXX --mode=link g++ -DSYSCONFDIR=\"/usr/site/pdns-2.9.20.20060122.563/etc\" -DLIBDIR=\"/usr/site/pdns-2.9.20.20060122.563/lib\" -DLOCALSTATEDIR=\"/var/run\" -Ibackends/bind -D_REENTRANT -Wall -O2 -L/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/lib -R/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/lib -L/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/ext -R/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/ext -o pdns_server ../modules/gpgsqlbackend/gpgsqlbackend.o ../modules/gpgsqlbackend/spgsql.o ../modules/pipebackend/coprocess.o ../modules/pipebackend/pipebackend.o -lpq -lssl -lcrypto -lcrypt -lresolv -lnsl -ldl dnspacket.o nameserver.o qtype.o logger.o arguments.o packethandler.o tcpreceiver.o packetcache.o statbag.o dnsbackend.o ws.o webserver.o session.o misc.o receiver.o ueberbackend.o dynlistener.o dynhandler.o resolver.o communicator.o dnsproxy.o randombackend.o unix_utility.o common_startup.o unix_semaphore.o bindbackend2.o zoneparser2.o bindparser.o bindlexer.o huffman.o gsqlbackend.o sillyrecords.o bindbackend.o base64.o -lposix4 -lresolv -lnsl -lsocket -lpthread -lz
g++ -DSYSCONFDIR=\"/usr/site/pdns-2.9.20.20060122.563/etc\" -DLIBDIR=\"/usr/site/pdns-2.9.20.20060122.563/lib\" -DLOCALSTATEDIR=\"/var/run\" -Ibackends/bind -D_REENTRANT -Wall -O2 -o pdns_server ../modules/gpgsqlbackend/gpgsqlbackend.o ../modules/gpgsqlbackend/spgsql.o ../modules/pipebackend/coprocess.o ../modules/pipebackend/pipebackend.o dnspacket.o nameserver.o qtype.o logger.o arguments.o packethandler.o tcpreceiver.o packetcache.o statbag.o dnsbackend.o ws.o webserver.o session.o misc.o receiver.o ueberbackend.o dynlistener.o dynhandler.o resolver.o communicator.o dnsproxy.o randombackend.o unix_utility.o common_startup.o unix_semaphore.o bindbackend2.o zoneparser2.o bindparser.o bindlexer.o huffman.o gsqlbackend.o sillyrecords.o bindbackend.o base64.o -L/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/lib -L/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/ext -lpq -lssl -lcrypto -lcrypt -ldl -lposix4 -lresolv -lnsl -lsocket -lpthread -lz -Wl,-R -Wl,/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/lib -Wl,-R -Wl,/usr/site/pdns-2.9.20.20060122.563/ext/postgresql/ext
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -Ibackends/bind -O3 -I/build/boost-1.33.0/src/dist -DSYSCONFDIR=\"/usr/site/pdns-2.9.20.20060122.563/etc\" -DLIBDIR=\"/usr/site/pdns-2.9.20.20060122.563/lib\" -DLOCALSTATEDIR=\"/var/run\" -Ibackends/bind -D_REENTRANT -Wall -O2 -MT syncres.o -MD -MP -MF ".deps/syncres.Tpo" -c -o syncres.o syncres.cc; \
then mv -f ".deps/syncres.Tpo" ".deps/syncres.Po"; else rm -f ".deps/syncres.Tpo"; exit 1; fi
In file included from syncres.hh:15,
from syncres.cc:20:
recursor_cache.hh: In member function `bool MemRecursorCache::predicate::operator()(const MemRecursorCache::StoredRecord&) const':
recursor_cache.hh:58: warning: comparison between signed and unsigned integer expressions
In file included from dnsparser.hh:35,
from syncres.cc:35:
dnswriter.hh:7:20: stdint.h: No such file or directory
make[3]: *** [syncres.o] Error 1
make[3]: Leaving directory `/build/pdns-2.9.20.20060122.563/src/pdns-2.9.20.20060122.563/pdns'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/build/pdns-2.9.20.20060122.563/src/pdns-2.9.20.20060122.563/pdns'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/build/pdns-2.9.20.20060122.563/src/pdns-2.9.20.20060122.563'
make: *** [all] Error 2
The version build successfully on Redhat9 and Redhat Enterprise Linux 3.
The built version gives the following error when run using the gpgsql
backend in SLAVE mode:
Jan 30 15:56:52 ns1 pdns[4573]: gpgsql Connection succesful
Jan 30 15:56:52 ns1 pdns[4573]: AXFR started for 'ruf.rice.edu', transaction started
Jan 30 15:56:52 ns1 pdns[4573]: Communicator thread died because of error: PostgreSQL failed to execute command: ERROR: invalid UTF-8 byte sequence detected near byte 0x80
Jan 30 15:56:54 ns1 pdns[4548]: Our pdns instance exited with code 0
Jan 30 15:56:54 ns1 pdns[4548]: Respawning
Jan 30 15:56:55 ns1 pdns[4593]: Guardian is launching an instance
Jan 30 15:56:55 ns1 pdns[4593]: This is a guarded instance of pdns
...
On the PostgreSQL 8.1.2 server the errorlog has the following messages:
ERROR: invalid UTF-8 byte sequence detected near byte 0x80
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
ERROR: invalid UTF-8 byte sequence detected near byte 0x80
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
LOG: unexpected EOF on client connection
...
I know that PostgreSQL 8.1 is stricter about enforcing UTF-8 but it
is strange that all of the errors occur on the 128 byte boundary.
Is there anything else I can do to help with debugging this problem.
Some of the servers are successfully transferring their zones and
others are not. They are all running the same bind-9.2.x versions.
Ken
----- End forwarded message -----
More information about the Pdns-users
mailing list