Commit Graph
35220 Commits
Author SHA1 Message Date
Tom Krizek 4aeda47352 Merge branch 'tkrizek/ci-artifacts-1d-9.16' into 'bind-9.16'
[9.16] Use the default retention time for CI artifacts

See merge request isc-projects/bind9!7695
2023-03-16 14:17:51 +00:00
Tom Krizek 08839485af Use the default retention time for CI artifacts
The instance-wide GitLab CI artifact retention time was changed to 1 day
up from the previous value of 12 hours. Remove our explicit overrides
for 1 day artifact retention time, as it is the default now.

Previously, most of our jobs had overrides for 1 day retention, while
some of our jobs used the default 12 hours. This discrepancy could be
quite impractical at times.

(cherry picked from commit 8fef5676fa)
2023-03-16 15:16:23 +01:00
Tom Krizek c0e4596fb2 Move gitlab-ci.yml comment to its proper place
The comment refers to "interruptible" key, rather than the entire
"default" section.

(cherry picked from commit 1139907450)
2023-03-16 15:14:51 +01:00
Tom Krizek d8c68afa8a Merge tag 'v9_16_39' into v9_16
BIND 9.16.39
2023-03-15 18:53:29 +01:00
Mark Andrews 0b35e0cc8f Merge branch '3937-zone-sign-kasp-v9_16' into 'v9_16'
[9.16] Resolve "NSEC records aren't signed with both configured algorithms during NSEC3->NSEC transition"

See merge request isc-projects/bind9!7686
2023-03-14 22:30:55 +00:00
Mark Andrews 0c8eec4963 Add CHANGES for [GL #3937]
(cherry picked from commit aafcb8611c)
2023-03-15 00:30:56 +11:00
Mark Andrews 772cdf453d When signing with a new algorithm preserve NSEC/NSEC3 chains
If the zone already has existing NSEC/NSEC3 chains then zone_sign
needs to continue to use them.  If there are no chains then use
kasp setting otherwise generate an NSEC chain.

(cherry picked from commit 4b55201459)
2023-03-15 00:30:22 +11:00
Arаm Sаrgsyаn 589a203f23 Merge branch '3924-dnstap-test-timing-issue-v9_16' into 'v9_16'
[9.16] Resolve "missing messages in `dnstap` system test after query failure"

See merge request isc-projects/bind9!7678
2023-03-13 14:05:35 +00:00
Aram Sargsyan 299c023024 Improve dnstap system test reliability
The dnstap system test fails intermittently, and it appears to be
a timing issue - adding a short delay after running 'fstrm_capture',
and before running 'dnstap -reopen' improves the situation from
50% failures (5 out of 10 times) to 0% failures (0 out of 20 times),
tested locally.

The reason is that 'fstrm_capture' is executed in the background,
and due to OS scheduling and other factors, the listener socket
may not be ready when the following command runs and tells 'named'
to (re)open it.

(cherry picked from commit fa686fcea5)
2023-03-13 11:57:43 +00:00
Michal Nowak 58fd13ee5e Merge branch 'mnowak/stress-test-drop-parallel-build-v9_16' into 'v9_16'
[9.16] Drop parallel build from stress tests

See merge request isc-projects/bind9!7672
2023-03-09 17:42:50 +00:00
Michal Nowak 70f23b7dde Drop parallel build from stress tests
BUILD_PARALLEL_JOBS environmental variable is set to 6, which does not
align well with 4 and 8 CPU core systems dedicated to CI "stress" tests.
When multiple parallel jobs run on the host, they compete for resources
with an undesirable result: 6 compiler processes of one job may starve
named, resulting in lower-than-expected throughput and minutes-long
query response latency spikes.

Better drop the build parallelism of BIND-under-test. About 1-2 minutes
are added to the 60-65 minutes long job duration.

(cherry picked from commit 3fd7e7c81f)
2023-03-09 18:37:41 +01:00
Michal Nowak f7ec282168 Merge branch 'mnowak/stress-test-build-with-default-CFLAGS-v9_16' into 'v9_16'
[9.16] Build BIND in stress test jobs with common CFLAGS

See merge request isc-projects/bind9!7666
2023-03-09 10:08:24 +00:00
Michal Nowak 75464c98dd Build BIND in stress test jobs with common CFLAGS
By omission, BIND was not built with common CFLAGS in the stress test
jobs. Building with common CFLAGS and -Og should help GDB produce a
backtrace with more information.

(cherry picked from commit d33bdd36b4)
2023-03-09 11:03:38 +01:00
Tom Krizek ef1cc42f0b Merge branch 'tkrizek/set-up-version-and-release-notes-for-bind-9.16.40' into 'v9_16'
Set up version and release notes for BIND 9.16.40

See merge request isc-projects/bind9!7652
2023-03-07 16:37:00 +00:00
Tom Krizek 8d988a6469 Set up release notes for BIND 9.19.40 2023-03-07 15:04:06 +01:00
Tom Krizek 9287b94f63 Update BIND version to 9.16.40-dev 2023-03-07 15:02:42 +01:00
Tom Krizek 83e26c215f Ensure correct release date is put to man pages
In the generated man pages, `@RELEASEDATE@` wasn't replaced since the
actual variable name is `RELEASE_DATE` with an underscore. This issue
was introduced in the recently merged !7518 (commit
18b7ba3ea3) which removed the pregenerated
man pages from the repo.
v9.16.39
2023-03-06 14:03:49 +01:00
Tom Krizek 23aa8c2fc5 Merge branch 'prep-release' into v9_16_39-release 2023-03-03 15:30:25 +01:00
Tom Krizek 1bcdf21874 prep 9.16.39 2023-03-03 15:27:54 +01:00
Tom Krizek a9c0a9da76 Merge branch 'tkrizek/prepare-documentation-for-bind-9.16.39' into 'v9_16_39-release'
Prepare documentation for BIND 9.16.39

See merge request isc-private/bind9!502
2023-03-03 14:24:27 +00:00
Tom Krizek 7b5dedcc30 Add release note for GL #3673 2023-03-03 13:50:47 +01:00
Tom Krizek 80c4a89abc Tweak and reword release notes 2023-03-03 13:48:16 +01:00
Tom Krizek 96fcc6080d Prepare release notes for BIND 9.16.39 2023-03-03 13:47:17 +01:00
Tom Krizek 3f318921d4 Restore 9.16.38 release notes
The Known Issues section for 9.16.38 release notes was accidentally
removed during branch maintenance after release. Restore the contents to
its tagged released version.
2023-03-03 13:40:14 +01:00
Tom Krizek 41cea7ae70 Merge branch '3917-named-should-log-uv-version-when-starting-up-v9_16' into 'v9_16'
[9.16] Resolve "Named should log UV version when starting up"

See merge request isc-projects/bind9!7643
2023-03-03 08:57:34 +00:00
Mark AndrewsandTom Krizek c3efa7d3d9 Now logs UV versions when starting up
Named now logs both compile time and run time UV versions when
starting up.  This is useful information to have when debugging
network issues involving named.

(cherry picked from commit 5fd2cd8018)
2023-03-03 09:28:58 +01:00
Arаm Sаrgsyаn 3785aa8f87 Merge branch '3907-data-race-in-rbtdb-v9_16' into 'v9_16'
[9.16] Resolve "ThreadSanitizer: data race lib/dns/rbtdb.c:1365 in newversion"

See merge request isc-projects/bind9!7641
2023-03-02 21:41:24 +00:00
Aram Sargsyan ddb67b01b2 Check if catz is active in dns_catz_update_from_db()
A reconfiguration can deactivate the catalog zone, while the
offloaded update process was preparing to run.

(cherry picked from commit 6980e3b354)
2023-03-02 19:42:16 +00:00
Aram Sargsyan 641627838b Use catzs->lock in dns_catz_prereconfig()
There can be an update running in another thread, so use a lock,
like it's done in dns_catz_postreconfig().

(cherry picked from commit 3973724d67)
2023-03-02 19:36:26 +00:00
Aram Sargsyan 4f6f84b63d Update the CHANGES note for [GL #3777]
Remove the part which is no longer true after reverting the commit
in question.

The CHANGES entry was never part of a released BIND 9 version.

(cherry picked from commit e1627e1289)
2023-03-02 19:20:36 +00:00
Aram Sargsyan 2a719e9df2 Revert "Process db callbacks in zone_loaddone() after zone_postload()"
This reverts commit 1254f37584.

The commit introduced a data race, because dns_db_endload() is called
after unfreezing the zone.

(not cherry picked from commit 593dea871a)
2023-03-02 19:19:55 +00:00
Arаm Sаrgsyаn 95939fd880 Merge branch '3911-reconfig-zone-view-revert-bugfix-v9_16' into 'v9_16'
[9.16] Fix view's zones reverting bug during reconfiguration

See merge request isc-projects/bind9!7635
2023-03-01 16:46:21 +00:00
Aram Sargsyan b7809d07f8 Add CHANGES and release notes for [GL #3911]
(cherry picked from commit e1036253db)
2023-03-01 15:50:58 +00:00
Aram Sargsyan 2fba282206 Fix view's zones reverting bug during reconfiguration
During reconfiguration, the configure_view() function reverts the
configured zones to the previous view in case if there is an error.

It uses the 'zones_configured' boolean variable to decide whether
it is required to revert the zones, i.e. the error happened after
all the zones were successfully configured.

The problem is that it does not account for the case when an error
happens during the configuration of one of the zones (not the first),
in which case there are zones that are already configured for the
new view (and they need to be reverted), and there are zones that
are not (starting from the failed one).

Since 'zones_configured' remains 'false', the configured zones are
not reverted.

Replace the 'zones_configured' variable with a pointer to the latest
successfully configured zone configuration element, and when reverting,
revert up to and including that zone.

(cherry picked from commit 84c235a4b0)
2023-03-01 15:50:26 +00:00
Aram Sargsyan 3ac0f6ee50 Add a catz system test check for [GL #3911]
The trick is to configure a duplicate zone, which comes after the
catalog zone, where the duplicate zone is an existing member zone.

In that scenario, all the zones which come before the "faulty" zone
in the configuration file will fail to be reverted to the previous
version of the view after a reconfiguration error, and in this
particular case that will result in an assertion failure when the
catalog zone update is initiated, because it will be still tied to
the new version of the view, which was dismissed.

(cherry picked from commit 93c4f382f4)
2023-03-01 15:49:21 +00:00
Arаm Sаrgsyаn 54e2c48f74 Merge branch '3777-fix-crash-after-failed-ixfr-from-differences-v9_16' into 'v9_16'
[9.16] Resolve "crash after failed ixfr-from-differences on a catalog zone"

See merge request isc-projects/bind9!7624
2023-02-28 16:53:56 +00:00
Aram Sargsyan 1d79b3142e Add a CHANGES note for [GL #3777]
(cherry picked from commit 46b1c558ce)
2023-02-28 14:40:17 +00:00
Aram Sargsyan fff49a2ffb catz: unregister the db update-notify callback before detaching from db
When detaching from the previous version of the database, make sure
that the update-notify callback is unregistered, otherwise there is
an INSIST check which can generate an assertion failure in free_rbtdb(),
which checks that there are no outstanding update listeners in the list.

There is a similar code already in place for RPZ.

(cherry picked from commit cf79692a66)
2023-02-28 14:40:17 +00:00
Aram Sargsyan 79ee7353ad Searching catzs->zones requires a read lock
Lock the catzs->lock mutex before searching in the catzs->zones
hash table.

(cherry picked from commit 0ef0c86632)
2023-02-28 14:40:17 +00:00
Aram Sargsyan 1254f37584 Process db callbacks in zone_loaddone() after zone_postload()
The zone_postload() function can fail and unregister the callbacks.

Call dns_db_endload() only after calling zone_postload() to make
sure that the registered update-notify callbacks are not called
when the zone loading has failed during zone_postload().

Also, don't ignore the return value of zone_postload().

(cherry picked from commit ed268b46f1)
2023-02-28 14:40:17 +00:00
Aram Sargsyan 561289909b Add a system test for [GL #3777]
Add the 'ixfr-from-differences yes;' option to trigger a failed
zone postload operation when a zone is updated but the serial
number is not updated, then issue two successive 'rndc reload'
commands to trigger the bug, which causes an assertion failure.

(cherry picked from commit a73b67456e)
2023-02-28 14:40:17 +00:00
Michal Nowak 6367abec5b Merge branch 'mnowak/make-openbsd-allow_failure-true-v9_16' into 'v9_16'
[9.16] Do not fail pipeline because of failed OpenBSD system test

See merge request isc-projects/bind9!7618
2023-02-28 10:49:17 +00:00
Michal Nowak b4307c983d Do not fail pipeline because of failed OpenBSD system test
System test on OpenBSD is unstable even when test parallelism is
disabled.

(cherry picked from commit fc26da6d89)
2023-02-28 11:41:36 +01:00
Michal Nowak 909f7b6f37 Revert "Disable OpenBSD system test parallelism in CI"
This reverts commit 208d49a28d.

(cherry picked from commit a9d3ec33b3)
2023-02-28 11:41:07 +01:00
Arаm Sаrgsyаn 7ea7493ffe Merge branch '3900-catz-error-path-issues-v9_16' into 'v9_16'
[9.16] Resolve "Error path cleanup issues in dns_catz_new_zones() and dns_catz_new_zone()"

See merge request isc-projects/bind9!7607
2023-02-27 15:15:34 +00:00
Aram Sargsyan 6857f5a729 Add a CHANGES note for [GL #3900]
(cherry picked from commit d96d8dc651)
2023-02-27 14:06:53 +00:00
Aram Sargsyan 466a05eaf0 Fix a cleanup bug when isc_task_create() fails in dns_catz_new_zones()
Use isc_mem_putanddetach() instead of isc_mem_put() to detach from the
memory context.

(cherry picked from commit 9050481d1f)
2023-02-27 13:55:05 +00:00
Arаm Sаrgsyаn 0260b9aeb9 Merge branch '3880-fix-rpz-assertion-failure-during-failed-reconfiguration-v9_16' into 'v9_16'
[9.16] Detach rpzs and catzs from the previous view

See merge request isc-projects/bind9!7565
2023-02-27 10:06:04 +00:00
Aram Sargsyan a48e5e94e1 Add a CHANGES note for [GL #3880]
(cherry picked from commit b086374b1d)
2023-02-27 08:42:34 +00:00
Aram Sargsyan 9d5544a4a5 Detach rpzs and catzs from the previous view
When switching to a new view during a reconfiguration (or reverting
to the old view), detach the 'rpzs' and 'catzs' from the previuos view.

The 'catzs' case was earlier solved slightly differently, by detaching
from the new view when reverting to the old view, but we can not solve
this the same way for 'rpzs', because now in BIND 9.19 and BIND 9.18
a dns_rpz_shutdown_rpzs() call was added in view's destroy() function
before detaching the 'rpzs', so we can not leave the 'rpzs' attached to
the previous view and let it be shut down when we intend to continue
using it with the new view.

Instead, "re-fix" the issue for the 'catzs' pointer the same way as
for 'rpzs' for consistency, and also because a similar shutdown call
is likely to be implemented for 'catzs' in the near future.

(cherry picked from commit 121a095a22)
2023-02-27 08:42:34 +00:00