Files
bind9/lib/dns
Matthijs MekkingandEvan Hunt 3cd62b71e6 Fix race condition crash
When running resolver benchmark pipeline, a crash occurred:

https://gitlab.isc.org/isc-projects/bind9-shotgun-ci/-/pipelines/163946

In the code we are doing a lookup, it fails (meaning there is no node
with lookup name), we create the node and insert it and it fails.
But dns_qp_insert can only return ISC_R_SUCCESS or ISC_R_EXISTS.
So it must have been inserted in between. This is a race condition bug.

The first lookup only requires a write lock and if the lookup failed
the lock gets upgraded to a write lock and we insert the missing data.

To fix the race condition bug, we need to do a lookup again after we
have upgraded the lock to make sure it wasn't inserted in the mean
time.
2024-03-05 16:57:03 -08:00
..
2024-03-05 16:53:22 -08:00
2024-02-26 12:02:40 +11:00
2023-10-13 14:44:40 +02:00
2023-09-12 16:14:10 +02:00
2024-02-14 13:24:56 +01:00
2024-03-05 16:53:22 -08:00
2024-01-25 15:37:40 +01:00
2024-02-14 13:24:56 +01:00
2024-02-08 08:01:58 +01:00
2024-01-25 15:37:40 +01:00
2024-02-14 13:24:56 +01:00
2023-09-12 16:14:10 +02:00
2023-10-13 09:57:28 +00:00
2024-03-05 16:53:22 -08:00
2024-03-05 16:53:22 -08:00
2024-03-05 16:54:11 -08:00
2024-03-05 16:57:03 -08:00
2024-02-14 01:13:44 -08:00
2024-03-05 16:47:50 -08:00
2024-03-05 16:47:50 -08:00
2023-08-31 22:08:35 +02:00
2023-10-09 13:29:02 -07:00
2023-08-31 22:08:35 +02:00
2023-10-13 14:44:40 +02:00
2023-11-21 14:48:43 +11:00
2024-01-05 11:16:12 +01:00
2024-01-25 14:48:07 +01:00