The branch, master has been updated
       via  1a7cfd93432 ctdb: Fix a stuck cluster lock holder after a delayed 
leader bcast
      from  1e2901e0619 librpc:ndr:keycredlink don't require that kmi be a 
talloc_context

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 1a7cfd93432a227a972b34e1eb844134173be7b0
Author: Volker Lendecke <v...@samba.org>
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 <v...@samba.org>
    Reviewed-by: Martin Schwenke <mar...@meltin.net>
    
    Autobuild-User(master): Martin Schwenke <mart...@samba.org>
    Autobuild-Date(master): Thu Aug  7 02:59:20 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

Reply via email to