ctdb-banning: Do not set recovery mode to ACTIVE in daemon
authorAmitay Isaacs <amitay@gmail.com>
Fri, 30 Oct 2015 03:25:50 +0000 (14:25 +1100)
committerMartin Schwenke <martins@samba.org>
Fri, 30 Oct 2015 09:32:38 +0000 (10:32 +0100)
When a node gets banned, it should go into recovery and freeze all
databases.  We rely on the recovery daemon to detect the banned state
and put the node in recovery and freeze all databases.

Recent change in b4357a79d916b1f8ade8fa78563fbef0ce670aa9 took explicit
freezing out of banning code but left the setting of recovery mode
to ACTIVE.  Recovery daemon will freeze databases only if the recovery
mode is NORMAL.  Recovery mode set to ACTIVE is an indication that the
freeze has started.

Do not set the recovery mode to ACTIVE in banning.  Let recovery daemon
take care of it.

Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Fri Oct 30 10:32:38 CET 2015 on sn-devel-104

ctdb/server/ctdb_banning.c

index 3c5f8854890e1a902a8babf5c031b91d001f4dc1..ed85076172ea173ef1175fb4fe472a7ef438b138 100644 (file)
@@ -72,8 +72,9 @@ void ctdb_local_node_got_banned(struct ctdb_context *ctdb)
                ctdb_db->generation = INVALID_GENERATION;
        }
 
-       /* make sure we get frozen */
-       ctdb->recovery_mode = CTDB_RECOVERY_ACTIVE;
+       /* Recovery daemon will set the recovery mode ACTIVE and freeze
+        * databases.
+        */
 
        ctdb_release_all_ips(ctdb);
 }