This was … annoying today.
I’m playing with upgrading a PowerDNS instance and started getting All data was not consumed
when doing queries against particular zones. Turns out, it was the space at the end of the SOA record, somehow something was adding that in…
# pdnsutil check-zone example.com
[Error] Following record had a problem: "example.com IN SOA ns1.example.net dns.example.net 2020092142 3600 7200 3600000 172800 "
[Error] Error was: All data was not consumed
Checked 26 records of 'example.com', 1 errors, 0 warnings.
# psql -h nsdb.example.com
powerdns=> select * from records where type='SOA' and name like '%isdnsworking%';
id | domain_id | name | type | content | ttl | prio | change_date | disabled | ordername | auth
----------+-----------+-------------+------+----------------------------------------------------------------------+------+------+-------------+----------+-----------+------
15122753 | 1557559 | example.com | SOA | ns1.example.net dns.example.net 2020092142 3600 7200 3600000 172800 | 3600 | | | f | | t
(1 row)
powerdns=> update records set content='ns1.example.net dmain.netregistry.net 2020092142 3600 7200 3600000 172800' where type='SOA' and name like '%isdnsworking%' ;
UPDATE 1
powerdns=> select * from records where type='SOA' and name like '%isdnsworking%';
id | domain_id | name | type | content | ttl | prio | change_date | disabled | ordername | auth
----------+-----------+-------------+------+---------------------------------------------------------------------+------+------+-------------+----------+-----------+------
15122753 | 1557559 | example.com | SOA | ns1.example.net dns.example.net 2020092142 3600 7200 3600000 172800 | 3600 | | | f | | t
(1 row)
powerdns=> \q
# pdnsutil check-zone example.com
Checked 26 records of 'example.com', 0 errors, 0 warnings.
… wow.
powerdns=> select count(*) from records where type='SOA' and content like '% ';
count
--------
432955