client: flag local node in ctdb -Y status output
authorDavid Disseldorp <ddiss@suse.de>
Wed, 24 Aug 2011 09:34:56 +0000 (11:34 +0200)
committerDavid Disseldorp <ddiss@suse.de>
Tue, 6 Sep 2011 11:57:04 +0000 (13:57 +0200)
Regular "ctdb status" output flags which node is the local node, do the
same for machine readable output.

tools/ctdb.c

index e30302b2180808caa7e428449205687af064c767..a8474cf9b884c17c9ffab8d10d69426bb6f1037e 100644 (file)
@@ -624,9 +624,10 @@ static int control_status(struct ctdb_context *ctdb, int argc, const char **argv
                return ret;
        }
 
-       if(options.machinereadable){
-               printf(":Node:IP:Disconnected:Banned:Disabled:Unhealthy:Stopped:Inactive:PartiallyOnline:\n");
-               for(i=0;i<nodemap->num;i++){
+       if (options.machinereadable) {
+               printf(":Node:IP:Disconnected:Banned:Disabled:Unhealthy:Stopped"
+                      ":Inactive:PartiallyOnline:ThisNode:\n");
+               for (i=0;i<nodemap->num;i++) {
                        int partially_online = 0;
                        int j;
 
@@ -650,7 +651,7 @@ static int control_status(struct ctdb_context *ctdb, int argc, const char **argv
                                        talloc_free(ifaces);
                                }
                        }
-                       printf(":%d:%s:%d:%d:%d:%d:%d:%d:%d:\n", nodemap->nodes[i].pnn,
+                       printf(":%d:%s:%d:%d:%d:%d:%d:%d:%d:%d:\n", nodemap->nodes[i].pnn,
                                ctdb_addr_to_str(&nodemap->nodes[i].addr),
                               !!(nodemap->nodes[i].flags&NODE_FLAGS_DISCONNECTED),
                               !!(nodemap->nodes[i].flags&NODE_FLAGS_BANNED),
@@ -658,7 +659,8 @@ static int control_status(struct ctdb_context *ctdb, int argc, const char **argv
                               !!(nodemap->nodes[i].flags&NODE_FLAGS_UNHEALTHY),
                               !!(nodemap->nodes[i].flags&NODE_FLAGS_STOPPED),
                               !!(nodemap->nodes[i].flags&NODE_FLAGS_INACTIVE),
-                              partially_online);
+                              partially_online,
+                              (nodemap->nodes[i].pnn == mypnn));
                }
                return 0;
        }