This is release 4.8.0-beta1 of the Authoritative Server.
In 4.8, the LMDB backend gains a new Lightning Stream-compatible schema, which requires a data migration (this is automatic, and there is no migration back to the old schema). LMDB backend users should pay extra attention to the Upgrade Notes.
Lightning Stream is an open source data syncer that allows multiple nodes to sync LMDB (Lightning Memory-Mapped Database) data to and from an S3 (compatible) bucket. This has particular advantages in distributed and/or large-scale applications (i.e. ~1 million records), making DNS replication much, much easier to manage.
We are excited about how Lightning Stream simplifies running multiple distributed PowerDNS Authoritative servers, with full support for keeping record data and DNSSEC keys in sync, from multiple writers.
4.8.0-beta1 adds logic to deal with domains existing twice in the database when two Lightning Stream nodes manage to add it at the same time. It also contains a few other fixes, please see the list below.
ixfrdist: add a per domain max-soa-refresh option¶
References: pull request 12768
LUA records: enhance ifportup() with lists of sets of addresses like ifurlup()¶
References: pull request 12669
lmdb: handle lack of support for RRset comments better¶
References: pull request 12636
calm down the communicator loop (Kees Monshouwer)¶
References: pull request 12721
DNSRecord: Ensure that the content can be read or replaced, not edited¶
References: pull request 12664
LMDB: handle duplicate domain existence consistently¶
References: pull request 12729
Pick the right signer name when a NSEC name is also a delegation point (Kees Monshouwer)¶
References: pull request 12740
Fixes a typo in pdnsutil clear-zone help output (san983)¶
References: pull request 12706
This is release 4.8.0-alpha1 of the Authoritative Server.
In this release, the LMDB backend gains a new Lightning Stream-compatible schema, which requires a data migration (this is automatic, and there is no migration back to the old schema). LMDB backend users should pay extra attention to the Upgrade Notes.
Lightning Stream is an open source data syncer that allows multiple nodes to sync LMDB (Lightning Memory-Mapped Database) data to and from an S3 (compatible) bucket. This has particular advantages in distributed and/or large-scale applications (i.e. ~1 million records), making DNS replication much, much easier to manage.
We are excited about how Lightning Stream simplifies running multiple distributed PowerDNS Authoritative servers, with full support for keeping record data and DNSSEC keys in sync, from multiple writers.
This version also contains various other small fixes and improvements. Except for very minor ones, they are listed below.
new lmdbbackend storage schema that is compatible with Lightning Stream¶
References: pull request 12546
add byteslimit support to lua ifurlup() function¶
References: pull request 12277
pdnsutil, implement list-member-zones (Kees Monshouwer)¶
References: pull request 12406
LUA: accept more hex formats in createForward[6]¶
References: pull request 12349
cleanup for OpenSSL 3.0 API¶
References: pull request 11600, pull request 12401, pull request 12414, pull request 12423, pull request 12462, pull request 12501, pull request 12502, pull request 12513, pull request 12515, pull request 12516, pull request 12524, pull request 12527, pull request 12540, pull request 12550
service files: Add more sandboxing options¶
References: pull request 11065
move alsoNotifies up into DNSBackend¶
References: pull request 12265
Basic abstraction for handling colored terminal output, respecting isatty(), –no-colors and NO_COLOR¶
References: pull request 11346
change sdig output order (Kees Monshouwer)¶
References: pull request 11858
save errno value as close(2) might clobber it¶
References: pull request 11101
Fix multiple-version IXFR request handling in ixfrdist (Håkan Lindqvist)¶
References: pull request 12127
Properly encode json strings containing binary data¶
References: pull request 12260
lmdb, fix TSIG key removal (Kees Monshouwer)¶
References: pull request 12322
Update supported record types: remove A6 MAILA MAILB SIG and WKS, add ZONEMD¶
References: pull request 12252
Detect invalid bytes in makeBytesFromHex()¶
References: pull request 12066
initialize zone cache after dropping privileges (Kees Monshouwer)¶
References: pull request 11908
Prevent a race during the processing of SVC auf-hints¶
References: pull request 12659
fix ColumnSize argument in SQLBindParameter #12324 (v1shnya)¶
References: pull request 12331