diff options
-rw-r--r-- | ctdb/server/ctdb_recoverd.c | 15 |
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); |