Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.0 902e43b93 -> 54b4b99e1
  refs/heads/cassandra-2.1 37dfe4303 -> 642487143
  refs/heads/trunk 7add7ead1 -> f5fa97819


Fix undeclared throwable exception while executing 'nodetool netstats localhost'

Patch by Vishal Mehta and Carl Yeksigian, reviewed by Carl Yeksigian for
CASSANDRA-8122


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/54b4b99e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/54b4b99e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/54b4b99e

Branch: refs/heads/cassandra-2.0
Commit: 54b4b99e1e12328005df51feb71448a320a9b7d6
Parents: 902e43b
Author: Brandon Williams <brandonwilli...@apache.org>
Authored: Mon Dec 1 12:18:54 2014 -0600
Committer: Brandon Williams <brandonwilli...@apache.org>
Committed: Mon Dec 1 12:18:54 2014 -0600

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       |  5 ++
 .../cassandra/service/StorageServiceMBean.java  |  3 ++
 .../org/apache/cassandra/tools/NodeCmd.java     | 55 +++++++++++---------
 .../org/apache/cassandra/tools/NodeProbe.java   |  5 ++
 4 files changed, 42 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/54b4b99e/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java 
b/src/java/org/apache/cassandra/service/StorageService.java
index 601e036..0456907 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3387,6 +3387,11 @@ public class StorageService extends 
NotificationBroadcasterSupport implements IE
         return operationMode.toString();
     }
 
+    public boolean isStarting()
+    {
+        return operationMode == Mode.STARTING;
+    }
+
     public String getDrainProgress()
     {
         return String.format("Drained %s/%s ColumnFamilies", remainingCFs, 
totalCFs);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/54b4b99e/src/java/org/apache/cassandra/service/StorageServiceMBean.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageServiceMBean.java 
b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
index 2386fc8..0ea08a2 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -358,6 +358,9 @@ public interface StorageServiceMBean extends 
NotificationEmitter
     /** get the operational mode (leaving, joining, normal, decommissioned, 
client) **/
     public String getOperationMode();
 
+    /** Returns whether the storage service is starting or not */
+    public boolean isStarting();
+
     /** get the progress of a drain operation */
     public String getDrainProgress();
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/54b4b99e/src/java/org/apache/cassandra/tools/NodeCmd.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeCmd.java 
b/src/java/org/apache/cassandra/tools/NodeCmd.java
index e4a14b2..b085088 100644
--- a/src/java/org/apache/cassandra/tools/NodeCmd.java
+++ b/src/java/org/apache/cassandra/tools/NodeCmd.java
@@ -762,32 +762,35 @@ public class NodeCmd
             }
         }
 
-        outs.printf("Read Repair Statistics:%nAttempted: %d%nMismatch 
(Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), 
probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
-
-        MessagingServiceMBean ms = probe.msProxy;
-        outs.printf("%-25s", "Pool Name");
-        outs.printf("%10s", "Active");
-        outs.printf("%10s", "Pending");
-        outs.printf("%15s%n", "Completed");
-
-        int pending;
-        long completed;
-
-        pending = 0;
-        for (int n : ms.getCommandPendingTasks().values())
-            pending += n;
-        completed = 0;
-        for (long n : ms.getCommandCompletedTasks().values())
-            completed += n;
-        outs.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, 
completed);
-
-        pending = 0;
-        for (int n : ms.getResponsePendingTasks().values())
-            pending += n;
-        completed = 0;
-        for (long n : ms.getResponseCompletedTasks().values())
-            completed += n;
-        outs.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, 
completed);
+        if (!probe.isStarting())
+        {
+               outs.printf("Read Repair Statistics:%nAttempted: %d%nMismatch 
(Blocking): %d%nMismatch (Background): %d%n", probe.getReadRepairAttempted(), 
probe.getReadRepairRepairedBlocking(), probe.getReadRepairRepairedBackground());
+
+               MessagingServiceMBean ms = probe.msProxy;
+               outs.printf("%-25s", "Pool Name");
+               outs.printf("%10s", "Active");
+               outs.printf("%10s", "Pending");
+               outs.printf("%15s%n", "Completed");
+
+               int pending;
+               long completed;
+
+               pending = 0;
+               for (int n : ms.getCommandPendingTasks().values())
+                   pending += n;
+               completed = 0;
+               for (long n : ms.getCommandCompletedTasks().values())
+                   completed += n;
+               outs.printf("%-25s%10s%10s%15s%n", "Commands", "n/a", pending, 
completed);
+
+               pending = 0;
+               for (int n : ms.getResponsePendingTasks().values())
+                   pending += n;
+               completed = 0;
+               for (long n : ms.getResponseCompletedTasks().values())
+                   completed += n;
+               outs.printf("%-25s%10s%10s%15s%n", "Responses", "n/a", pending, 
completed);
+        }
     }
 
     public void printCompactionStats(PrintStream outs)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/54b4b99e/src/java/org/apache/cassandra/tools/NodeProbe.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/NodeProbe.java 
b/src/java/org/apache/cassandra/tools/NodeProbe.java
index 261d416..3736659 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -602,6 +602,11 @@ public class NodeProbe
         return ssProxy.getOperationMode();
     }
 
+    public boolean isStarting()
+    {
+        return ssProxy.isStarting();
+    }
+
     public void truncate(String keyspaceName, String cfName)
     {
         try

Reply via email to