[Pdns-users] pdns crash (bind backend)

Peter Gervai grinapo+pdnsdevel at gmail.com
Wed Sep 21 08:34:13 UTC 2011


This is 2.9.22, I'm about to upgrade to 3.0 but maybe this wasn't yet
fixed (google didn't find any relevant, but it doesn't mean anything
:))

[update: I cannot upgrade to 3.0 until bind backend case problem is solved :-(]

PowerDNS 2.9.22 (C) 2001-2009 PowerDNS.COM BV (Apr 17 2011, 11:05:48,
gcc 4.5.2) starting up

Program received signal SIGSEGV, Segmentation fault.
0x00002aaaab18e78b in std::string::assign(std::string const&) () from
/usr/lib/libstdc++.so.6
(gdb) bt
#0  0x00002aaaab18e78b in std::string::assign(std::string const&) ()
from /usr/lib/libstdc++.so.6
#1  0x00000000004cef4e in operator= (__str=<optimized out>,
this=<optimized out>) at /usr/include/c++/4.5/bits/basic_string.h:533
#2  operator= (this=0x11fbb30) at backends/bind/bindbackend2.hh:40
#3  std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<Bind2DNSRecord*,
std::vector<Bind2DNSRecord, std::allocator<Bind2DNSRecord> > > > (
   __last=<optimized out>) at /usr/include/c++/4.5/bits/stl_algo.h:2066
#4  0x00000000004cf1dc in
__unguarded_insertion_sort<__gnu_cxx::__normal_iterator<Bind2DNSRecord*,
std::vector<Bind2DNSRecord> > > (__last=<optimized out>,
   __first=<optimized out>) at /usr/include/c++/4.5/bits/stl_algo.h:2147
#5  std::__final_insertion_sort<__gnu_cxx::__normal_iterator<Bind2DNSRecord*,
std::vector<Bind2DNSRecord, std::allocator<Bind2DNSRecord> > > > (
   __first=<optimized out>, __last=...) at
/usr/include/c++/4.5/bits/stl_algo.h:2178
#6  0x00000000004c9fb3 in
sort<__gnu_cxx::__normal_iterator<Bind2DNSRecord*,
std::vector<Bind2DNSRecord> > > (__last=<optimized out>,
__first=<optimized out>)
   at /usr/include/c++/4.5/bits/stl_algo.h:5214
#7  Bind2Backend::loadConfig (this=0x755f10, status=0x0) at
backends/bind/bindbackend2.cc:587
#8  0x00000000004cc356 in Bind2Backend::Bind2Backend (this=<optimized
out>, suffix=<optimized out>) at backends/bind/bindbackend2.cc:463
#9  0x00000000004d1959 in Bind2Factory::make (this=<optimized out>,
suffix=...) at backends/bind/bindbackend2.cc:1018
#10 0x0000000000475760 in BackendMakerClass::all (this=0x7409c0) at
dnsbackend.cc:174
#11 0x0000000000496a64 in UeberBackend::UeberBackend (this=0x7556e8,
pname=<optimized out>) at ueberbackend.cc:208
#12 0x0000000000450a73 in PacketHandler::PacketHandler (this=0x7556e0)
at packethandler.cc:46
#13 0x000000000045f852 in TCPNameserver::go (this=0x753fa0) at tcpreceiver.cc:65
#14 0x00000000004be762 in mainthread () at common_startup.cc:327
#15 0x0000000000492266 in main (argc=3, argv=0x7fffffffec88) at receiver.cc:586

This was caused by a specific domain which was AXFR'd form the master,
but it isn't related to any of the specific RRs there, looks like it's
some kind of overflow, since when I have removed a random RR it worked
again.

Peter



More information about the Pdns-users mailing list