]> git.ipfire.org Git - thirdparty/pdns.git/blame - docs/upgrading.rst
gmysql-backend: set unsigned attribute on notified_serial column
[thirdparty/pdns.git] / docs / upgrading.rst
CommitLineData
0e2063c3
PL
1Upgrade Notes
2=============
3
4Before proceeding, it is advised to check the release notes for your
5PowerDNS version, as specified in the name of the distribution file.
6
7Please upgrade to the PowerDNS Authoritative Server 4.0.0 from 3.4.2+.
8See the `3.X <https://doc.powerdns.com/3/authoritative/upgrading/>`__
9upgrade notes if your version is older than 3.4.2.
10
114.0.X to 4.1.0
12--------------
13
22544d28
PL
14- Recursion has been removed, see the :doc:`dedicated migration guide <guides/recursion>`.
15- ALIAS record expension is disabled by default, use :ref:`setting-expand-alias` to enable.
bab2a886
EW
16- *Your LDAP schema might need to be updated*, because new record types
17 have been added (see below) and the ``dNSDomain2`` type has been
18 changed.
22544d28
PL
19- The :doc:`LDAP Backend <backends/ldap>` now supports additional Record types
20
21 - NSEC3
22 - NSEC3PARAM
23 - TLSA
24 - CDS
25 - CDNSKEY
26 - OPENPGPKEY
27 - TKEY
28 - URI
29 - CAA
0e2063c3
PL
30
31Changed options
32^^^^^^^^^^^^^^^
33
34- ``experimental-lua-policy-script`` option and the feature itself have
10200e92
PL
35 been completely dropped. We invite you to use `PowerDNS
36 dnsdist <https://dnsdist.org>`_ instead.
0e2063c3 37
621f5105
PL
38- As recursion has been removed from the Authoritative Server, the
39 ``allow-recursion``, ``recursive-cache-ttl`` and ``recursor`` options have
40 been removed as well.
41
c01b3507
PL
42- ``default-ksk-algorithms`` has been renamed to :ref:`setting-default-ksk-algorithm`
43 and only supports a single algorithm name now.
44
45- ``default-zsk-algorithms`` has been renamed to :ref:`setting-default-zsk-algorithm`
46 and only supports a single algorithm name now.
47
0e2063c3
PL
48Changed defaults
49~~~~~~~~~~~~~~~~
50
ef75af13
EW
51- The default value of :ref:`setting-webserver-allow-from` has been changed from ``0.0.0.0, ::/0`` to ``127.0.0.1, ::1``.
52
0e2063c3
PL
53Other changes
54^^^^^^^^^^^^^
55
56The ``--with-pgsql``, ``--with-pgsql-libs``, ``--with-pgsql-includes``
57and ``--with-pgsql-config`` ``configure`` options have been deprecated.
58``configure`` now attempts to find the Postgresql client libraries via
59``pkg-config``, falling back to detecting ``pg_config``. Use
60``--with-pg-config`` to specify a path to a non-default ``pg_config`` if
61you have Postgresql installed in a non-default location.
62
67f12ad9
PL
63The ``--enable-libsodium`` configure flag has changed from 'no' to 'auto'.
64This means that if libsodium and its development header are installed, it will be linked in.
65
d001d2e4
PL
66The improved :doc:`LDAP Backend <backends/ldap>` backend now requires Kerberos headers to be installed.
67Specifically, it needs `krb5.h` to be installed.
68
0e2063c3
PL
694.0.X to 4.0.2
70--------------
71
72Changed options
73^^^^^^^^^^^^^^^
74
75Changed defaults
76~~~~~~~~~~~~~~~~
77
78- :ref:`setting-any-to-tcp` changed from ``no`` to ``yes``
79
803.4.X to 4.0.0
81--------------
82
83Database changes
84^^^^^^^^^^^^^^^^
85
86No changes have been made to the database schema. However, several
87superfluous queries have been dropped from the SQL backend. Furthermore,
88the generic SQL backends switched to prepared statements. If you use a
89non-standard SQL schema, please review the new defaults.
90
91- ``insert-ent-query``, ``insert-empty-non-terminal-query``,
92 ``insert-ent-order-query`` have been replaced by one query named
93 ``insert-empty-non-terminal-order-query``
94- ``insert-record-order-query`` has been dropped,
95 ``insert-record-query`` now sets the ordername (or NULL)
96- ``insert-slave-query`` has been dropped, ``insert-zone-query`` now
97 sets the type of zone
98
99Changed options
100^^^^^^^^^^^^^^^
101
102Several options have been removed or renamed, for the full overview of
103all options, see :doc:`settings`.
104
105Renamed options
106~~~~~~~~~~~~~~~
107
108The following options have been renamed:
109
110- ``experimental-json-interface`` ==> :ref:`setting-api`
111- ``experimental-api-readonly`` ==> :ref:`setting-api-readonly`
112- ``experimental-api-key`` ==> :ref:`setting-api-key`
113- ``experimental-dname-processing`` ==> :ref:`setting-dname-processing`
114- ``experimental-dnsupdate`` ==> :ref:`setting-dnsupdate`
115- ``allow-dns-update-from`` ==> :ref:`setting-allow-dnsupdate-from`
116- ``forward-dnsupdates`` ==> :ref:`setting-forward-dnsupdate`
117
118Changed defaults
119~~~~~~~~~~~~~~~~
120
121- :ref:`setting-default-ksk-algorithms`
122 changed from rsasha256 to ecdsa256
123- :ref:`setting-default-zsk-algorithms`
124 changed from rsasha256 to empty
125
126Removed options
127~~~~~~~~~~~~~~~
128
129The following options are removed:
130
131- ``pipebackend-abi-version``, it now a setting per-pipe backend.
132- ``strict-rfc-axfrs``
133- ``send-root-referral``
134
135API
136^^^
137
138The API path has changed to ``/api/v1``.
139
140Incompatible change: ``SOA-EDIT-API`` now follows ``SOA-EDIT-DNSUPDATE``
141instead of ``SOA-EDIT`` (incl. the fact that it now has a default value
142of ``DEFAULT``). You must update your existing ``SOA-EDIT-API`` metadata
143(set ``SOA-EDIT`` to your previous ``SOA-EDIT-API`` value, and
144``SOA-EDIT-API`` to ``SOA-EDIT`` to keep the old behaviour).
145
146Resource Record Changes
147^^^^^^^^^^^^^^^^^^^^^^^
148
149Since PowerDNS 4.0.0 the CAA resource record (type 257) is supported.
150Before PowerDNS 4.0.0 type 257 was used for a proprietary MBOXFW
151resource record, which was removed from PowerDNS 4.0. Hence, if you used
152CAA records with 3.4.x (stored in the DB with wrong type=MBOXFW but
153worked fine) and upgrade to 4.0, PowerDNS will fail to parse this
154records and will throw an exception on all queries for a label with
155MBOXFW records. Thus, make sure to clean up the records in the DB.
17f0bbcf
PL
156
157In version 3.X, the PowerDNS Authoritative Server silently ignored records that
158have a 'priority' field (like MX or SRV), but where one was not in the database.
159In 4.X, :doc:`pdnsutil check-zone <manpages/pdnsutil.1>` will complain about this.