From: "Fabio M. Di Nitto" <fdinitto@xxxxxxxxxx> always display membership data from the local node display when a node is unknown to the local node instead of an error from IPC. Signed-off-by: Fabio M. Di Nitto <fdinitto@xxxxxxxxxx> --- tools/corosync-quorumtool.c | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) diff --git a/tools/corosync-quorumtool.c b/tools/corosync-quorumtool.c index c391d81..c9e8de0 100644 --- a/tools/corosync-quorumtool.c +++ b/tools/corosync-quorumtool.c @@ -409,13 +409,20 @@ static int display_quorum_data(int is_quorate, uint32_t nodeid, return CS_OK; } - if ((err=votequorum_getinfo(v_handle, nodeid, &info)) == CS_OK) { + err=votequorum_getinfo(v_handle, nodeid, &info); + if ((err == CS_OK) || (err == CS_ERR_NOT_EXIST)) { printf("\nVotequorum information\n"); printf("----------------------\n"); printf("Node ID: %u\n", nodeid); - printf("Node state: %s\n", decode_state(info.node_state)); + printf("Node state: "); + if (err == CS_ERR_NOT_EXIST) { + printf("Unknown\n"); + err = CS_OK; + goto out; + } + printf("%s\n", decode_state(info.node_state)); if (info.node_state != NODESTATE_MEMBER) { - return err; + goto out; } printf("Node votes: %d\n", info.node_votes); printf("Expected votes: %d\n", info.node_expected_votes); @@ -440,6 +447,8 @@ static int display_quorum_data(int is_quorate, uint32_t nodeid, fprintf(stderr, "Unable to get node %u info: %s\n", nodeid, cs_strerror(err)); } +out: + display_nodes_data(nodeid, nodeid_format, name_format); return err; -- 1.7.7.6 _______________________________________________ discuss mailing list discuss@xxxxxxxxxxxx http://lists.corosync.org/mailman/listinfo/discuss