[Pdns-users] 188.8.131.52 SPF records - Parsing Exceptions / STL Errors
tom at t0mb.net
Thu Nov 24 13:41:19 UTC 2011
(nb. apologies if this is a duplicate email, however, I sent one earlier
in reply to my earlier thread, but altered the subject, and it doesn't
seem to have come through)
Thank you for your help in my previous mail (Peter Van Dijk, Nils
Breunese) (entitled: specifying more complex sql queries with gmysql
It looks like I don't need to do that any more. Basically, I was having
problems with a massive qsize-q, and despite my hugely beefy sql servers
not breaking a sweat in terms of CPU/Memory/Disk IO, I was thinking that
InnoDB might be struggling after seeing the InnoDB status showing loads
and loads of unstarted transactions. Anyway, it turns out that the
problem was actually down to us recently allowing customers to start
setting up SPF records. We weren't validating them properly, and we
were seeing a lot of exceptions like the following:
Exception: Parsing record content: Data field in DNS should start with
quote (") at position 0 of 'v=spf1 include:_spf.google.com ~all'
and even more worryingly, like this:
TCP Connection Thread died because of STL error: Parsing record content:
Data field in DNS should start with quote (") at position 0 of 'v=spf1
Basically, after starting to validate these records, and retrospectively
fixing the records already in the database, my performance has returned
We are running a custom version of 184.108.40.206, with a custom written MSSQL
back-end which we have as second in priority to the gmysql backend.
I've looked in to trying to use OpenDBX in order to upgrade to a later
version of PDNS (v3+) without having to rewrite portions of the custom
back-end, but I think it would be too much work to try and re-design our
database and control panel to work with the database format that OpenDBX
requires. I don't think it's practical. I think upgrading to 2.9.22
wouldn't be too much work, but I'm wondering whether the issues I've
raised above would have been fixed if we did that. I know that there
are some bugs fixed which cause the TCP thread to recycle when there are
timeouts, but I don't know about these parsing exceptions. We do suffer
with the TCP back-end recycling because of time-out errors, so it'd be
good to fix them anyway!
Any ideas if I should ask one of our developers to try and get our
patches to apply cleanly to 2.9.22?
If only they had contributed the patches to the project all those years
Thanks for your help so far!
More information about the Pdns-users