[Pdns-users] Pipe Backend not working correctly

Roman Gaufman hackeron at gmail.com
Mon Jan 28 09:55:45 UTC 2013


Ah, great thanks! - I changed to 5000 and now it works (for now).

I will report if it becomes intermittent with the official version. I only
added the pipe-timeout recently, even without this option pdns would work
perfectly for days, I can do while true; do dig
@127.0.0.1${RANDOM}sdgsdg${RANDOM}.
zanview.com; done and let that run for hours without a single issue.

But come back 2 days later and it suddenly becomes intermittent, I would do:

➜  ~  host proxy.sdgsdg${RANDOM}.zanview.com
Host proxy.sdgsdg18933.zanview.com not found: 2(SERVFAIL)
➜  ~  host proxy.sdgsdg${RANDOM}.zanview.com
proxy.sdgsdg8009.zanview.com has address 89.207.135.250

In the logs I would see:

Jan 16 19:34:34 zanview pdns[21613]: Query: 'Q#
011proxy.sdgsdg18933.zanview.com#011IN#011SOA#011-1#01162.189.34.89#0110.0.0.0
'
Jan 16 19:34:34 zanview pdns[21613]: Query: 'Q#
011proxy.sdgsdg18933.zanview.com#011IN#011ANY#011-1#01162.189.34.89#0110.0.0.0
'
Jan 16 19:34:41 zanview pdns[21613]: Query: 'Q#
011proxy.sdgsdg8009.zanview.com#011IN#011SOA#011-1#01162.189.34.89#0110.0.0.0
'
Jan 16 19:34:41 zanview pdns[21613]: Query: 'Q#
011proxy.sdgsdg8009.zanview.com#011IN#011ANY#011-1#01162.189.34.89#0110.0.0.0
'

No clues at all as to why 1 would fail and 1 wouldn't - no errors at all.

It wasn't a case of backend pipes not being restarted either, I could do
pkill dns_pipe.rb and powerdns would restart the pipes. It would just
simply stop resolving after a few days for no obvious reason.

I will see if this happens with the official latest release though :)

Thanks for your help,

Roman


On 28 January 2013 07:33, abang <abang at t-ipnet.net> wrote:

> Hi,
>
> your pipe-timeout is 5 *ms*. This is possibly too less (depending on your
> pipe-backend).
>
> See http://doc.powerdns.com/from3.**1to3.2.html<http://doc.powerdns.com/from3.1to3.2.html>
>
> Am 27.01.2013 23:17, schrieb Roman Gaufman:
>
>> Hi :)
>>
>> This is the pipe-command related stuff in my pdns.conf (rest is default):
>>
>> launch=pipe,bind
>> pipe-command=/etc/powerdns/**dns_pipe.rb
>> pipebackend-abi-version=2
>> pipe-timeout=5
>> distributor-threads=1
>>
>> When I use the vanilla Ubuntu package that comes in Precise, it works
>> for a few days, then it stops responding to requests. I have enabling
>> logging but all I see is:
>>
>> Jan 27 21:25:26 zanview pdns[30070]: Query:
>> 'Q#011zanview.com#011IN#**011SOA#011-1#01162.189.34.89#**0110.0.0.0<http://011zanview.com#011IN%23011SOA%23011-1%2301162.189.34.89%230110.0.0.0>
>> <http://011zanview.com#011IN#**011SOA#011-1#01162.189.34.89#**0110.0.0.0<http://011zanview.com#011IN%23011SOA%23011-1%2301162.189.34.89%230110.0.0.0>
>> >'
>>
>> Jan 27 21:25:26 zanview pdns[30070]: Query:
>> 'Q#011zanview.com#011IN#**011ANY#011-1#01162.189.34.89#**0110.0.0.0<http://011zanview.com#011IN%23011ANY%23011-1%2301162.189.34.89%230110.0.0.0>
>> <http://011zanview.com#011IN#**011ANY#011-1#01162.189.34.89#**0110.0.0.0<http://011zanview.com#011IN%23011ANY%23011-1%2301162.189.34.89%230110.0.0.0>
>> >'
>>
>>
>> I have no idea what is happening, pdns is not growing in memory and
>> taking a low 0.1% cpu but the pipe backend simply stops responding after
>> a few days!
>>
>> I saw that pdns had some commits related to the pipe backend so I've
>> upgrade to the official package: pdns-static 3.2-1
>>
>> Now when I run pdns_server I see this in the log:
>>
>> Jan 27 22:13:19 zanview pdns[13883]: Engaging bypass - now operating
>> unthreaded
>> Jan 27 22:13:19 zanview pdns[13883]: [PIPEBackend] Fatal argument error:
>> Timeout waiting for data from coprocess
>> Jan 27 22:13:19 zanview pdns[13883]: Caught an exception instantiating a
>> backend: Timeout waiting for data from coprocess
>> Jan 27 22:13:19 zanview pdns[13883]: Cleaning up
>> Jan 27 22:13:19 zanview pdns[13883]: Got a signal 6, attempting to print
>> trace:
>> Jan 27 22:13:19 zanview pdns[13883]: /usr/sbin/pdns_server-**instance()
>> [0x6b6ce0]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /lib/x86_64-linux-gnu/libc.so.**6(+0x364a0) [0x7f56908774a0]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /lib/x86_64-linux-gnu/libc.so.**6(gsignal+0x35) [0x7f5690877425]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /lib/x86_64-linux-gnu/libc.so.**6(abort+0x17b) [0x7f569087ab8b]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_ZN9__gnu_cxx27__**
>> verbose_terminate_handlerEv+**0x115)
>> [0xb62315]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_ZN10__cxxabiv111__**
>> terminateEPFvvE+0x6)
>> [0xb60756]
>> Jan 27 22:13:19 zanview pdns[13883]: /usr/sbin/pdns_server-**instance()
>> [0xb60783]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(__cxa_rethrow+0x46) [0xb60806]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_**ZN17BackendMakerClass3allEb+**0x6e9)
>> [0x69b179]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_**ZN12UeberBackendC1ERKSs+0x169)
>> [0x6c0709]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_**ZN13PacketHandlerC1Ev+0x20)
>> [0x673080]
>> Jan 27 22:13:19 zanview pdns[13883]: /usr/sbin/pdns_server-**instance()
>> [0x6f28a1]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /usr/sbin/pdns_server-**instance(_Z7qthreadPv+0xb38) [0x6f4948]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /lib/x86_64-linux-gnu/**libpthread.so.0(+0x7e9a) [0x7f5690f03e9a]
>> Jan 27 22:13:19 zanview pdns[13883]:
>> /lib/x86_64-linux-gnu/libc.so.**6(clone+0x6d) [0x7f5690934cbd]
>> Jan 27 22:13:20 zanview pdns[13670]: Our pdns instance (13883) exited
>> after signal 6
>> Jan 27 22:13:20 zanview pdns[13670]: Respawning
>>
>> Here is the pipe script in action:
>>
>> ~ # sudo -u pdns /etc/powerdns/dns_pipe.rb
>> Qtest_hostIN      ANY-1192.0.43.10
>> DATAtest_hostINA120-189.207.**135.250
>> END
>>
>> So it doesn't appear to be the script or anything to do with permissions.
>>
>> Any ideas what am I doing wrong?
>>
>
> ______________________________**_________________
> Pdns-users mailing list
> Pdns-users at mailman.powerdns.**com <Pdns-users at mailman.powerdns.com>
> http://mailman.powerdns.com/**mailman/listinfo/pdns-users<http://mailman.powerdns.com/mailman/listinfo/pdns-users>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.powerdns.com/pipermail/pdns-users/attachments/20130128/f38b5d66/attachment-0001.html>


More information about the Pdns-users mailing list