[Pdns-dev] Re: patches

Norbert Sendetzky norbert at linuxnetworks.de
Thu Feb 3 13:52:10 CET 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Bert

> On http://www.linuxnetworks.de/pdnsldap/ I find four patches, which I want
> to apply, but I don't entirely understand distributor.hh.diff, and I'm
> unsure tcpreceiver.cc.diff is safe.

The distributor patch is a hack and I think there must be a better way to 
solve the problem. The basic problem is that pdns 2.9.16 creates initially 
the number of backends configured + one for AXFR + self. Unfortunately the 
backend for AXFR and the master instance are included in d_num_threads.

This leads to missing worker threads, if one or two of the backend threads are 
throwing an AhuException (e.g. the connection to the server is broken). They 
aren't recreated, because d_num_threads is still more or equal than 3 (one or 
two worker threads + one AXFR thread + the master instance). The worst case 
is that only one worker thread is alive if the server restarted.

The tcpreceiver patch solves the same for the AXFR thread. It forces the AXFR 
thread to recreate a new instance of the backend if it died.


Norbert

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAkICHnoACgkQxMLs5v5/7eCAQwCdH80FX6a2I0+P7kpcVU3hj2j0
VYIAniJz456ycJ1SbYvXTPufDY1yJykQ
=fvIF
-----END PGP SIGNATURE-----


More information about the Pdns-dev mailing list