banning: Make ctdb_local_node_got_banned() a void function
authorAmitay Isaacs <amitay@gmail.com>
Fri, 28 Jun 2013 04:04:18 +0000 (14:04 +1000)
committerMichael Adam <obnox@samba.org>
Mon, 26 Aug 2013 11:35:52 +0000 (13:35 +0200)
When this function is called, we are already committed to banning
and there is no point in failing this function.  In case, freezing of
databases fails, it will be fixed from recovery daemon.
(cherry picked from commit bb178338658b4ae32382a1f62f7c21cee1d4878f)

include/ctdb_private.h
server/ctdb_banning.c
server/ctdb_monitor.c

index 674261295c72ceced8d1e56fbc00229091f5ce12..355f3612d9245fb09799e2770f3c668eb3cfc917 100644 (file)
@@ -1632,7 +1632,7 @@ int ctdb_vacuum_init(struct ctdb_db_context *ctdb_db);
 int32_t ctdb_control_enable_script(struct ctdb_context *ctdb, TDB_DATA indata);
 int32_t ctdb_control_disable_script(struct ctdb_context *ctdb, TDB_DATA indata);
 
-int32_t ctdb_local_node_got_banned(struct ctdb_context *ctdb);
+void ctdb_local_node_got_banned(struct ctdb_context *ctdb);
 int32_t ctdb_control_set_ban_state(struct ctdb_context *ctdb, TDB_DATA indata);
 int32_t ctdb_control_get_ban_state(struct ctdb_context *ctdb, TDB_DATA *outdata);
 int32_t ctdb_control_set_db_priority(struct ctdb_context *ctdb, TDB_DATA indata);
index eb7913c92087619efb85a9eb9767f1b991a66511..9195b820ae395c9091f3a28377f9c579a5f9f2f4 100644 (file)
@@ -42,7 +42,7 @@ ctdb_ban_node_event(struct event_context *ev, struct timed_event *te,
        }
 }
 
-int32_t ctdb_local_node_got_banned(struct ctdb_context *ctdb)
+void ctdb_local_node_got_banned(struct ctdb_context *ctdb)
 {
        uint32_t i;
 
@@ -61,8 +61,6 @@ int32_t ctdb_local_node_got_banned(struct ctdb_context *ctdb)
        }
        ctdb_release_all_ips(ctdb);
        ctdb->recovery_mode = CTDB_RECOVERY_ACTIVE;
-
-       return 0;
 }
 
 int32_t ctdb_control_set_ban_state(struct ctdb_context *ctdb, TDB_DATA indata)
@@ -124,7 +122,7 @@ int32_t ctdb_control_set_ban_state(struct ctdb_context *ctdb, TDB_DATA indata)
 
        event_add_timed(ctdb->ev, ctdb->banning_ctx, timeval_current_ofs(bantime->time,0), ctdb_ban_node_event, ctdb);
        if (bantime->pnn == ctdb->pnn) {
-               return ctdb_local_node_got_banned(ctdb);
+               ctdb_local_node_got_banned(ctdb);
        }
 
        return 0;
index 81ea69c8a8caa25115fadcd7df2e68c2db21ea88..24791f713aa54db909abd36b4477bd62c4c48753 100644 (file)
@@ -479,7 +479,7 @@ int32_t ctdb_control_modflags(struct ctdb_context *ctdb, TDB_DATA indata)
 
        /* if we have become banned, we should go into recovery mode */
        if ((node->flags & NODE_FLAGS_BANNED) && !(c->old_flags & NODE_FLAGS_BANNED) && (node->pnn == ctdb->pnn)) {
-               return ctdb_local_node_got_banned(ctdb);
+               ctdb_local_node_got_banned(ctdb);
        }
        
        return 0;