summaryrefslogtreecommitdiff
path: root/ctdb
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2015-10-27 14:35:09 +1100
committerAmitay Isaacs <amitay@samba.org>2015-11-16 08:42:12 +0100
commitc5e50a474b6ddac05cab0116da42c62a615c6c79 (patch)
treeca07338215bc1852c76116c49cbc1b3ed8e34da6 /ctdb
parentd1f996a50f1da36e7046fe28cdb97285e7cf00a5 (diff)
downloadsamba-c5e50a474b6ddac05cab0116da42c62a615c6c79.tar.gz
ctdb-recoverd: Move VNN map retrieval to where it is needed
The VNN map is only needed on the recovery master, so no need for all recovery daemons to retrieve it. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Diffstat (limited to 'ctdb')
-rw-r--r--ctdb/server/ctdb_recoverd.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c
index 9ff73bdb2f5..64ef2036dff 100644
--- a/ctdb/server/ctdb_recoverd.c
+++ b/ctdb/server/ctdb_recoverd.c
@@ -3390,14 +3390,6 @@ static void main_loop(struct ctdb_context *ctdb, struct ctdb_recoverd *rec,
pnn = ctdb_get_pnn(ctdb);
- /* get the vnnmap */
- ret = ctdb_ctrl_getvnnmap(ctdb, CONTROL_TIMEOUT(), pnn, mem_ctx, &vnnmap);
- if (ret != 0) {
- DEBUG(DEBUG_ERR, (__location__ " Unable to get vnnmap from node %u\n", pnn));
- return;
- }
-
-
/* get nodemap */
TALLOC_FREE(rec->nodemap);
ret = ctdb_ctrl_getnodemap(ctdb, CONTROL_TIMEOUT(), pnn, rec, &rec->nodemap);
@@ -3606,6 +3598,13 @@ static void main_loop(struct ctdb_context *ctdb, struct ctdb_recoverd *rec,
}
+ /* get the vnnmap */
+ ret = ctdb_ctrl_getvnnmap(ctdb, CONTROL_TIMEOUT(), pnn, mem_ctx, &vnnmap);
+ if (ret != 0) {
+ DEBUG(DEBUG_ERR, (__location__ " Unable to get vnnmap from node %u\n", pnn));
+ return;
+ }
+
if (rec->need_recovery) {
/* a previous recovery didn't finish */
do_recovery(rec, mem_ctx, pnn, nodemap, vnnmap);