nodetool no longer shows node joining patch by driftx; reviewed by Vijay for CASSANDRA-6811
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7bc4f5dc Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7bc4f5dc Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7bc4f5dc Branch: refs/heads/cassandra-2.1 Commit: 7bc4f5dc327073e431e4f8aa682db76fa3367425 Parents: eb6a7b4 Author: Vijay <vijay2...@gmail.com> Authored: Sun Mar 9 14:48:11 2014 -0700 Committer: Vijay <vijay2...@gmail.com> Committed: Sun Mar 9 19:15:57 2014 -0700 ---------------------------------------------------------------------- .../org/apache/cassandra/tools/NodeTool.java | 70 +++++++++++--------- 1 file changed, 39 insertions(+), 31 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7bc4f5dc/src/java/org/apache/cassandra/tools/NodeTool.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/tools/NodeTool.java b/src/java/org/apache/cassandra/tools/NodeTool.java index d24e013..5120739 100644 --- a/src/java/org/apache/cassandra/tools/NodeTool.java +++ b/src/java/org/apache/cassandra/tools/NodeTool.java @@ -506,41 +506,49 @@ public class NodeTool else System.out.println(); - for (Map.Entry<InetAddress, Float> entry : filteredOwnerships.entrySet()) + for (Map.Entry<String, String> entry : endpointsToTokens.entries()) { - String endpoint = entry.getKey().getHostAddress(); - for (String token : endpointsToTokens.get(endpoint)) + String endpoint = entry.getKey(); + String rack; + try { - String rack; - try - { - rack = probe.getEndpointSnitchInfoProxy().getRack(endpoint); - } catch (UnknownHostException e) - { - rack = "Unknown"; - } + rack = probe.getEndpointSnitchInfoProxy().getRack(endpoint); + } + catch (UnknownHostException e) + { + rack = "Unknown"; + } - String status = liveNodes.contains(endpoint) - ? "Up" - : deadNodes.contains(endpoint) - ? "Down" - : "?"; - - String state = "Normal"; - - if (joiningNodes.contains(endpoint)) - state = "Joining"; - else if (leavingNodes.contains(endpoint)) - state = "Leaving"; - else if (movingNodes.contains(endpoint)) - state = "Moving"; - - String load = loadMap.containsKey(endpoint) - ? loadMap.get(endpoint) - : "?"; - String owns = new DecimalFormat("##0.00%").format(entry.getValue()); - System.out.printf(format, endpoint, rack, status, state, load, owns, token); + String status = liveNodes.contains(endpoint) + ? "Up" + : deadNodes.contains(endpoint) + ? "Down" + : "?"; + + String state = "Normal"; + + if (joiningNodes.contains(endpoint)) + state = "Joining"; + else if (leavingNodes.contains(endpoint)) + state = "Leaving"; + else if (movingNodes.contains(endpoint)) + state = "Moving"; + + String load = loadMap.containsKey(endpoint) + ? loadMap.get(endpoint) + : "?"; + String owns; + try + { + InetAddress ep = InetAddress.getByName(endpoint); + Float percent = filteredOwnerships.get(ep); + owns = (percent != null) ? new DecimalFormat("##0.00%").format(percent) : "?"; + } + catch (UnknownHostException e) + { + throw new RuntimeException(e); } + System.out.printf(format, endpoint, rack, status, state, load, owns, entry.getValue()); } System.out.println(); }