[Pdns-users] Segmentation Fault starting pdns

shaggyshags at gmail.com shaggyshags at gmail.com
Mon Oct 10 19:29:53 UTC 2005


I have a new server running mysql and Powerdns. The database is configured
and I have granted access to the db for the pdns user. When i run a monitor
it connects fine but throws off a Segmentation Fault error, see below:

pdns: Oct 10 15:17:47 This is module gmysqlbackend.so reporting
Oct 10 15:17:47 This is a standalone pdns
Oct 10 15:17:47 UDP server bound to 127.0.0.1:53 <http://127.0.0.1:53>
Oct 10 15:17:47 TCP server bound to 127.0.0.1:53 <http://127.0.0.1:53>
Oct 10 15:17:47 PowerDNS 2.9.15 (C) 2001-2004 PowerDNS.COM BV (Jan 21 2004,
08:51:10) starting up
Oct 10 15:17:47 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.
Oct 10 15:17:47 Set effective group id to 102
Oct 10 15:17:47 Set effective user id to 375
Oct 10 15:17:47 Creating backend connection for TCP
Oct 10 15:17:47 gmysql Connection succesful
Oct 10 15:17:47 About to create 25 backend threads
% Oct 10 15:17:47 gmysql Connection succesful
Oct 10 15:17:47 gmysql Connection succesful
/etc/init.d/pdns: line 172: 1921 Segmentation Fault $pdns_server --daemon=no
--guardian=no --control-console --loglevel=9

Now the line $pdns_server --daemon=no --guardian=no --control-console
--loglevel=9 is kinda bothering me since I do not have control-console
enabled in the pdns.conf file. I was wondering if anyone knew the reason why
it was erroring on this line?


pdns.conf: version - v2.9.15

# Autogenerated configuration file template
#################################
# allow-axfr-ips If disabled, DO allow zonetransfers from these IP addresses
#
# allow-axfr-ips=

#################################
# allow-recursion List of netmasks that are allowed to recurse
#
# allow-recursion=

#################################
# cache-ttl Seconds to store packets in the PacketCache
#
# cache-ttl=20

#################################
# chroot If set, chroot to this directory for more security
#
# chroot=

#################################
# config-dir Location of configuration directory (pdns.conf)
#
# config-dir=/usr/local/etc

#################################
# config-name Name of this virtual configuration - will rename the binary
image
#
# config-name=

#################################
# control-console Debugging switch - don't use
#
#control-console=no

#################################
# daemon Operate as a daemon
#
# daemon=no

#################################
# default-soa-name name to insert in the SOA record if none set in the
backend
#
# default-soa-name=a.misconfigured.powerdns.server

#################################
# disable-axfr Disable zonetransfers but do allow TCP queries
#
# disable-axfr=no

#################################
# disable-tcp Do not listen to TCP queries
#
# disable-tcp=no

#################################
# distributor-threads Default number of Distributor (backend) threads to
start
#
# distributor-threads=3

#################################
# fancy-records Process URL and MBOXFW records
#
# fancy-records=no

#################################
# guardian Run within a guardian process
#
# guardian=no

#################################
# launch Which backends to launch and order to query them in
#
launch=gmysql

#################################
# lazy-recursion Only recurse if question cannot be answered locally
#
# lazy-recursion=yes

#################################
# load-modules Load this module - supply absolute or relative path
#
load-modules=gmysql

#################################
# local-address Local IP address to which we bind
#
# local-address=0.0.0.0 <http://0.0.0.0>

#################################
# local-ipv6 Local IP address to which we bind
#
# local-ipv6=

#################################
# local-port The port on which we listen
#
# local-port=53

#################################
# log-dns-details If PDNS should log failed update requests
#
# log-dns-details=

#################################
# log-failed-updates If PDNS should log failed update requests
#
# log-failed-updates=

#################################
# logfile Logfile to use
#
# logfile=pdns.log

#################################
# logging-facility Log under a specific facility
#
# logging-facility=

#################################
# loglevel Amount of logging. Higher is more. Do not set below 3
#
# loglevel=4

#################################
# master Act as a master
#
# master=no

#################################
# max-queue-length Maximum queuelength before considering situation lost
#
# max-queue-length=5000

#################################
# max-tcp-connections Maximum number of TCP connections
#
# max-tcp-connections=10

#################################
# module-dir Default directory for modules
#
# module-dir=/usr/local/bin/../lib

#################################
# negquery-cache-ttl Seconds to store packets in the PacketCache
#
# negquery-cache-ttl=60

#################################
# only-soa Make sure that no SOA serial is less than this number
#
# only-soa=org

#################################
# out-of-zone-additional-processing Do out of zone additional processing
#
# out-of-zone-additional-processing=no

#################################
# query-cache-ttl Seconds to store packets in the PacketCache
#
# query-cache-ttl=20

#################################
# query-logging Hint backends that queries should be logged
#
# query-logging=no

#################################
# queue-limit Maximum number of milliseconds to queue a query
#
# queue-limit=1500

#################################
# receiver-threads Number of receiver threads to launch
#
# receiver-threads=1

#################################
# recursive-cache-ttl Seconds to store packets in the PacketCache
#
# recursive-cache-ttl=10

#################################
# recursor If recursion is desired, IP address of a recursing nameserver
#
# recursor=no

#################################
# setgid If set, change group id to this gid for more security
#
# setgid=

#################################
# setuid If set, change user id to this uid for more security
#
# setuid=

#################################
# skip-cname Do not perform CNAME indirection for each query
#
# skip-cname=no

#################################
# slave Act as a slave
#
# slave=no

#################################
# slave-cycle-interval Reschedule failed SOA serial checks once every ..
seconds
#
# slave-cycle-interval=60

#################################
# smtpredirector Our smtpredir MX host
#
# smtpredirector=a.misconfigured.powerdns.smtp.server

#################################
# soa-minimum-ttl Default SOA mininum ttl
#
# soa-minimum-ttl=3600

#################################
# soa-serial-offset Make sure that no SOA serial is less than this number
#
# soa-serial-offset=0

#################################
# socket-dir Where the controlsocket will live
#
# socket-dir=/var/run

#################################
# strict-rfc-axfrs Perform strictly rfc compliant axfrs (very slow)
#
# strict-rfc-axfrs=no

#################################
# urlredirector Where we send hosts to that need to be url redirected
#
# urlredirector=127.0.0.1 <http://127.0.0.1>

#################################
# use-logfile Use a log file
#
# use-logfile=no

#################################
# webserver Start a webserver for monitoring
#
# webserver=no

#################################
# webserver-address IP Address of webserver to listen on
#
# webserver-address=127.0.0.1 <http://127.0.0.1>

#################################
# webserver-password Password required for accessing the webserver
#
# webserver-password=

#################################
# webserver-port Port of webserver to listen on
#
# webserver-port=8081

#################################
# webserver-print-arguments If the webserver should print arguments
#
# webserver-print-arguments=no

#################################
# wildcard-url Process URL and MBOXFW records
#
# wildcard-url=no

#################################
# wildcards Honor wildcards in the database
#
# wildcards=


cache-ttl=90
query-cache-ttl=90
queue-limit=4500

distributor-threads=25
max-tcp-connections=75


disable-axfr=yes
slave=no
guardian=yes

#local-address=127.0.0.1 <http://127.0.0.1>


daemon=yes
setgid=some group
setuid=some user



# SQL
launch=gmysql
gmysql-user=Someuser
gmysql-password=Someuser
gmysql-dbname=pdns
gmysql-socket=/tmp/mysql.sock
gmysql-basic-query=select content,ttl,prio,type,domain_id,name from records
where domain_status = 1 and type='%s' and name='%s'
gmysql-id-query=select content,ttl,prio,type,domain_id,name from records
where domain_status = 1 and type='%s' and name='%s'
gmysql-any-query=select content,ttl,prio,type,domain_id,name from records
where domain_status = 1 and name='%s'
gmysql-any-id-query=select content,ttl,prio,type,domain_id,name from records
where domain_status = 1 and name='%s' and domain_id=%d
gmysql-list-query=select content,ttl,prio,type,domain_id,name from records
where domain_status = 1 and domain_id=%d

Also when I run a status after starting the daemon it seems to run for a few
seconds and dies with the error below:

# /etc/init.d/pdns status
pdns: 1936: Child running on pid 1938
# /etc/init.d/pdns status
pdns: 1936: Child running on pid 1947
# /etc/init.d/pdns status
pdns: 1936: Child running on pid 1956
# /etc/init.d/pdns status
pdns: 1936: Child running on pid 1965
# /etc/init.d/pdns status
pdns: 1936: Child running on pid 1974
# /etc/init.d/pdns status
pdns: 1936: Child died because of signal 11

Thanks to anyone who can give me any information. P.S. this same config runs
on a few other servers with no issues.
--
-- Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.powerdns.com/pipermail/pdns-users/attachments/20051010/c7923226/attachment.html>


More information about the Pdns-users mailing list