ctdb-tools: Print "UNKNOWN" when leader PNN is unknown
authorMartin Schwenke <martin@meltin.net>
Wed, 18 Mar 2020 23:46:25 +0000 (10:46 +1100)
committerMartin Schwenke <martins@samba.org>
Mon, 17 Jan 2022 10:21:33 +0000 (10:21 +0000)
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
ctdb/tools/ctdb.c

index 8370e11f8e6829312a521337a676f727be9ded71..5f0c32b317da7308d8cd3f4981cc9d0ccb67a07e 100644 (file)
@@ -213,6 +213,16 @@ failed:
        return NULL;
 }
 
+static void print_pnn(uint32_t pnn)
+{
+       if (pnn == CTDB_UNKNOWN_PNN) {
+               printf("UNKNOWN\n");
+               return;
+       }
+
+       printf("%u\n", pnn);
+}
+
 static bool verify_pnn(struct ctdb_context *ctdb, int pnn)
 {
        struct ctdb_node_map *nodemap;
@@ -862,7 +872,8 @@ static void print_status(TALLOC_CTX *mem_ctx, struct ctdb_context *ctdb,
        printf("Recovery mode:%s (%d)\n",
               recmode == CTDB_RECOVERY_NORMAL ? "NORMAL" : "RECOVERY",
               recmode);
-       printf("Recovery master:%d\n", recmaster);
+       printf("Recovery master:");
+       print_pnn(recmaster);
 }
 
 static int control_status(TALLOC_CTX *mem_ctx, struct ctdb_context *ctdb,
@@ -4536,7 +4547,8 @@ static int control_recmaster(TALLOC_CTX *mem_ctx, struct ctdb_context *ctdb,
                return ret;
        }
 
-       printf("%u\n", recmaster);
+       print_pnn(recmaster);
+
        return 0;
 }