failing a dmaster send due to the transport being down is fatal
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Tue, 30 Jun 2009 02:14:58 +0000 (12:14 +1000)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Mon, 27 Jul 2009 03:08:10 +0000 (13:08 +1000)
server/ctdb_call.c

index 908c77c8256eb41fc011684622650a943e04db5b..e4d880d12209751e93cae64aae6daf72effda7fe 100644 (file)
@@ -196,6 +196,11 @@ static void ctdb_call_send_dmaster(struct ctdb_db_context *ctdb_db,
        int len;
        uint32_t lmaster = ctdb_lmaster(ctdb, key);
 
+       if (ctdb->methods == NULL) {
+               ctdb_fatal(ctdb, "Failed ctdb_call_send_dmaster since transport is down");
+               return;
+       }
+
        if (lmaster == ctdb->pnn) {
                ctdb_send_dmaster_reply(ctdb_db, header, *key, *data, 
                                        c->hdr.srcnode, c->hdr.reqid);