The branch, v4-22-test has been updated
via 5f93ef723df ctdb: Fix a stuck cluster lock holder after a delayed
leader bcast
from af6d23f9891 smbd: fix mode being sent to possibly_set_archive
https://git.samba.org/?p=samba.git;a=shortlog;h=v4-22-test
- Log -----------------------------------------------------------------
commit 5f93ef723df9ccac0db46edd914374d04415152b
Author: Volker Lendecke <[email protected]>
Date: Wed Aug 6 15:28:29 2025 +0200
ctdb: Fix a stuck cluster lock holder after a delayed leader bcast
If a delayed broadcast by a previous cluster lock holder arrives, the
new legitimate leader will accept this without questioning in
leader_handler(). Without this patch rec->leader will never be
overwritten, and because rec->pnn != rec->leader we'll also never send
out fresh leader broadcasts. And because we hold the cluster lock,
nobody else can step up.
Fix this in the next round of leader broadcast timeout.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=15892
Signed-off-by: Volker Lendecke <[email protected]>
Reviewed-by: Martin Schwenke <[email protected]>
Autobuild-User(master): Martin Schwenke <[email protected]>
Autobuild-Date(master): Thu Aug 7 02:59:20 UTC 2025 on atb-devel-224
(cherry picked from commit 1a7cfd93432a227a972b34e1eb844134173be7b0)
Autobuild-User(v4-22-test): Jule Anger <[email protected]>
Autobuild-Date(v4-22-test): Thu Aug 21 08:58:34 UTC 2025 on atb-devel-224
-----------------------------------------------------------------------
Summary of changes:
ctdb/server/ctdb_recoverd.c | 1 +
1 file changed, 1 insertion(+)
Changeset truncated at 500 lines:
diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c
index 11644868e46..edc89754c2c 100644
--- a/ctdb/server/ctdb_recoverd.c
+++ b/ctdb/server/ctdb_recoverd.c
@@ -1902,6 +1902,7 @@ static void cluster_lock_election(struct ctdb_recoverd
*rec)
* attempt to retake it. This provides stability.
*/
if (cluster_lock_held(rec)) {
+ rec->leader = rec->pnn;
goto done;
}
--
Samba Shared Repository