[Pdns-users] pdns 3.4.7 crashes or behaves strange

Kees Monshouwer mind04 at monshouwer.org
Tue Nov 17 20:43:15 UTC 2015


Hi Klaus,

Check your custom queries. The gpgsql-info-zone-query is missing the 
account column.

To output the default queries in pdns use 'pdns_server --no-config
--launch=gpgsql --config | grep gpgsql- -B2'

Please make sure the number of columns and the number of arguments in
your queries match with the ones in pdns.

Kind regards,

Kees

On 11/17/2015 08:10 PM, Klaus Darilion wrote:
> Unfortunately I do not managed to get a core dump. Altough I set:
> ulimit -c unlimited
> echo "/tmp/core.%e.sig%s.%p" > /proc/sys/kernel/core_pattern
>
> before starting pdns.
>
> regards
> Klaus
>
> On 17.11.2015 19:55, Aki Tuomi wrote:
>> Can you provide gdb output?
>>
>> Aki
>>
>> On Tue, Nov 17, 2015 at 07:49:29PM +0100, Klaus Darilion wrote:
>>> Hi!
>>>
>>> I have update our pdns from 3.3.3 to 3.4.7. As always I built the
>>> packages myself (using the debian-pdns folder in the tarball) on Ubuntu
>>> 10.04. I updated the DB schema, but when I start pdns it crashes
>>> multiple times as shown below. After respawing several times, pdns
>>> starts up and answers queries. But after receiving a NOTIFY it somehow
>>> locks up and does not respond to DNS anymore.
>>>
>>> I also attached my config.
>>>
>>> Any ideas what could be the problem, or how I debug it myself?
>>>
>>> Thanks
>>> Klaus
>>>
>>>
>>> 18:37:49 pdns[20183]: Listening on controlsocket in
>>> '/var/run/pdns.controlsocket'
>>> 18:37:49 pdns[20185]: Guardian is launching an instance
>>> 18:37:49 pdns[20185]: Reading random entropy from '/dev/urandom'
>>> 18:37:49 pdns[20185]: Loading '/usr/lib/pdns/libgpgsqlbackend.so'
>>> 18:37:49 pdns[20185]: [gpgsqlbackend] This is the gpgsql backend version
>>> 3.4.7 (Nov 17 2015, 18:07:59) reporting
>>> 18:37:49 pdns[20185]: This is a guarded instance of pdns
>>> 18:37:49 pdns[20185]: Listening on controlsocket on '1.2.34.27:53000'
>>> 18:37:49 pdns[20185]: Only allowing TCP control from: 1.2.34.0/27
>>> 18:37:49 pdns[20185]: UDP server bound to 1.2.34.29:53
>>> 18:37:49 pdns[20185]: UDPv6 server bound to [2000:321:9::11]:53
>>> 18:37:49 pdns[20185]: TCP server bound to 1.2.34.29:53
>>> 18:37:49 pdns[20185]: TCPv6 server bound to [2000:321:9::11]:53
>>> 18:37:49 pdns[20185]: PowerDNS Authoritative Server 3.4.7
>>> (jenkins at autotest.powerdns.com) (C) 2001-2015 PowerDNS.COM BV
>>> 18:37:49 pdns[20185]: Using 64-bits mode. Built on 20151117181304 by
>>> root at xxx, gcc 4.4.3.
>>> 18:37:49 pdns[20185]: PowerDNS comes with ABSOLUTELY NO WARRANTY. This
>>> is free software, and you are welcome to redistribute it according to
>>> the terms of the GPL version 2.
>>> 18:37:49 pdns[20185]: Polled security status of version 3.4.7 at
>>> startup, no known issues reported: OK
>>> 18:37:49 pdns[20185]: Set effective group id to 114
>>> 18:37:49 pdns[20185]: Set effective user id to 114
>>> 18:37:49 pdns[20185]: Master/slave communicator launching
>>> 18:37:49 pdns[20185]: Creating backend connection for TCP
>>> 18:37:49 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:49 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:49 pdns[20185]: Only asked for 1 backend thread - operating unthreaded
>>> 18:37:50 pdns[20185]: 2 slave domains need checking, 0 queued for AXFR
>>> 18:37:50 pdns[20185]: Received serial number updates for 2 zones, had 0
>>> timeouts
>>> 18:37:50 pdns[20185]: Domain
>>> 'dev-signing.rc0-monitoring.dnssec-signiert.at' is stale, master serial
>>> 211, our serial 0
>>> 18:37:50 pdns[20185]: Domain 'monitoring.rc0' is stale, master serial 2,
>>> our serial 0
>>> 18:37:50 pdns[20185]: Initiating transfer of
>>> 'dev-signing.rc0-monitoring.dnssec-signiert.at' from remote
>>> '2000:123:2000:1002::6'
>>> 18:37:50 pdns[20185]: Initiating transfer of 'monitoring.rc0' from
>>> remote '1.2.145.251'
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: gpgsql Connection successful. Connected to
>>> database 'regdns' on 'localhost'.
>>> 18:37:50 pdns[20185]: Got a signal 11, attempting to print trace:
>>> 18:37:50 pdns[20185]: /usr/sbin/pdns_server-instance(+0x104d3e)
>>> [0x7f0081db7d3e]
>>> 18:37:50 pdns[20185]: /lib/libc.so.6(+0x338c0) [0x7f00804c78c0]
>>> 18:37:50 pdns[20185]: /usr/lib/libstdc++.so.6(_ZNSs6assignERKSs+0x13)
>>> [0x7f0080f7d183]
>>> 18:37:50 pdns[20185]:
>>> /usr/sbin/pdns_server-instance(_ZN11GSQLBackend13getDomainInfoERKSsR10DomainInfo+0x1b0)
>>> [0x7f0081e2f970]
>>> 18:37:50 pdns[20185]:
>>> /usr/sbin/pdns_server-instance(_ZN12UeberBackend13getDomainInfoERKSsR10DomainInfo+0x3c)
>>> [0x7f0081dbfd9c]
>>> 18:37:50 pdns[20185]:
>>> /usr/sbin/pdns_server-instance(_ZN17CommunicatorClass4suckERKSsS1_+0x203) [0x7f0081de1be3]
>>> 18:37:50 pdns[20185]:
>>> /usr/sbin/pdns_server-instance(_ZN17CommunicatorClass19retrievalLoopThreadEv+0x317)
>>> [0x7f0081df52f7]
>>> 18:37:50 pdns[20185]:
>>> /usr/sbin/pdns_server-instance(_ZN17CommunicatorClass20retrieveLaunchhelperEPv+0x9)
>>> [0x7f0081df5c89]
>>> 18:37:50 pdns[20185]: /lib/libpthread.so.0(+0x69ca) [0x7f00808239ca]
>>> 18:37:50 pdns[20185]: /lib/libc.so.6(clone+0x6d) [0x7f008057f45d]
>>> 18:37:50 pdns[20183]: Our pdns instance (20185) exited after signal 6
>>> 18:37:50 pdns[20183]: Respawning
>>> 18:37:51 pdns[20243]: Guardian is launching an instance
>>> 18:37:51 pdns[20243]: Reading random entropy from '/dev/urandom'
>>> 18:37:51 pdns[20243]: Loading '/usr/lib/pdns/libgpgsqlbackend.so'
>>> 18:37:51 pdns[20243]: [gpgsqlbackend] This is the gpgsql backend version 3.4
>>>
>>>
>>>
>>>
>>>
>>> allow-axfr-ips=127.0.0.1,1.2.34.27
>>> cache-ttl=0
>>> distributor-threads=1
>>> launch=gpgsql
>>> local-address=1.2.34.29
>>> local-ipv6=2000:321:0009::11
>>> logging-facility=2
>>> loglevel=255
>>> negquery-cache-ttl=0
>>> query-cache-ttl=0
>>> query-local-address=1.2.34.29
>>> query-local-address6=2000:321:0009::11
>>> receiver-threads=8
>>> recursive-cache-ttl=0
>>> retrieval-threads=32
>>> setgid=pdns
>>> setuid=pdns
>>> slave=yes
>>> slave-cycle-interval=60
>>> slave-renotify=yes
>>> soa-refresh-default=10800
>>> trusted-notification-proxy=1.2.33.3,1.2.3.4,1.2.34.27
>>> tcp-control-address=1.2.34.27
>>> tcp-control-range=1.2.34.0/27
>>> tcp-control-secret=xxx
>>>
>>> gpgsql-dbname=regdns
>>> gpgsql-user=xxx
>>> gpgsql-password=xxx
>>> gpgsql-host=localhost
>>> gpgsql-dnssec
>>>
>>> gpgsql-master-zone-query=select master from soap_domains where name='%s'
>>> and type='SLAVE'
>>> gpgsql-info-zone-query=select
>>> id,name,master,last_check,notified_serial,type from soap_domains where
>>> name='%s'
>>> gpgsql-info-all-slaves-query=select id,name,master,last_check,type from
>>> soap_domains where type='SLAVE' and next_check <= extract(epoch from
>>> now())::integer limit 2500;
>>> gpgsql-insert-slave-query=insert into soap_domains
>>> (type,name,master,account) values('SLAVE','%s','%s','%s')
>>> gpgsql-update-serial-query=update soap_domains set notified_serial=%d
>>> where id=%d
>>> gpgsql-update-lastcheck-query=update soap_domains set last_check=%d
>>> where id=%d
>>> gpgsql-info-all-master-query=select
>>> id,name,master,last_check,notified_serial,type from soap_domains where
>>> type='MASTER'
>>>
>>> gpgsql-get-domain-metadata-query=select content from
>>> intercept_domainmetadata('%s','%s')
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Pdns-users mailing list
>>> Pdns-users at mailman.powerdns.com
>>> http://mailman.powerdns.com/mailman/listinfo/pdns-users
>>>
> _______________________________________________
> Pdns-users mailing list
> Pdns-users at mailman.powerdns.com
> http://mailman.powerdns.com/mailman/listinfo/pdns-users






More information about the Pdns-users mailing list