diff options
Diffstat (limited to 'ctdb/server')
-rw-r--r-- | ctdb/server/ctdb_recoverd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c index cc239959c56..7a13339bf37 100644 --- a/ctdb/server/ctdb_recoverd.c +++ b/ctdb/server/ctdb_recoverd.c @@ -1836,7 +1836,7 @@ static void cluster_lock_election(struct ctdb_recoverd *rec) if (cluster_lock_held(rec)) { cluster_lock_release(rec); } - return; + goto done; } /* @@ -1844,7 +1844,7 @@ static void cluster_lock_election(struct ctdb_recoverd *rec) * attempt to retake it. This provides stability. */ if (cluster_lock_held(rec)) { - return; + goto done; } rec->leader = CTDB_UNKNOWN_PNN; @@ -1856,6 +1856,7 @@ static void cluster_lock_election(struct ctdb_recoverd *rec) D_WARNING("Took cluster lock, leader=%"PRIu32"\n", rec->leader); } +done: rec->election_in_progress = false; } |