You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2014/11/03 22:00:48 UTC
[1/8] git commit: Add 'nodetool statusgossip'
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.0 5548bf45e -> 83d4762a6
refs/heads/cassandra-2.1 399a4ecf9 -> fe8e92f8f
refs/heads/trunk 57b5fb64c -> 931a51869
Add 'nodetool statusgossip'
Patch by Jan Karlsson, reviewed by Brandon Williams for CASSANDRA-8125
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/83d4762a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/83d4762a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/83d4762a
Branch: refs/heads/cassandra-2.0
Commit: 83d4762a6d6c28c792fadc1d7f228600097d924f
Parents: 5548bf4
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:58:04 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:58:04 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/StorageService.java | 6 ++++++
.../org/apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeCmd.java | 8 ++++++++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++
6 files changed, 26 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 0ec3ff1..97fb94a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.12:
+ * Add 'nodetool statusgossip' (CASSANDRA-8125)
* Improve client notification that nodes are ready for requests (CASSANDRA-7510)
* Handle negative timestamp in writetime method (CASSANDRA-8139)
* Pig: Remove errant LIMIT clause in CqlNativeStorage (CASSANDRA-8166)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 1f831b9..066544a 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -293,6 +293,12 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
}
+ //should only be called via JMX
+ public boolean isGossipRunning()
+ {
+ return Gossiper.instance.isEnabled();
+ }
+
// should only be called via JMX
public void startRPCServer()
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 6308aa5..0e2f55d 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -392,6 +392,9 @@ public interface StorageServiceMBean extends NotificationEmitter
// allows a user to recover a forcibly 'killed' node
public void startGossiping();
+ // allows a user to see whether gossip is running or not
+ public boolean isGossipRunning();
+
// allows a user to forcibly completely stop cassandra
public void stopDaemon();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 d9f3607..a397244 100644
--- a/src/java/org/apache/cassandra/tools/NodeCmd.java
+++ b/src/java/org/apache/cassandra/tools/NodeCmd.java
@@ -27,6 +27,7 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.ExecutionException;
+
import javax.management.openmbean.TabularData;
import com.google.common.base.Joiner;
@@ -171,6 +172,7 @@ public class NodeCmd
SNAPSHOT,
STATUS,
STATUSBINARY,
+ STATUSGOSSIP,
STATUSTHRIFT,
STOP,
STOPDAEMON,
@@ -1246,6 +1248,7 @@ public class NodeCmd
case STATUSBINARY : nodeCmd.printIsNativeTransportRunning(System.out); break;
case DISABLEGOSSIP : probe.stopGossiping(); break;
case ENABLEGOSSIP : probe.startGossiping(); break;
+ case STATUSGOSSIP : nodeCmd.printIsGossipRunning(System.out); break;
case DISABLEHANDOFF : probe.disableHintedHandoff(); break;
case ENABLEHANDOFF :
if (arguments.length > 0) { probe.enableHintedHandoff(arguments[0]); }
@@ -1494,6 +1497,11 @@ public class NodeCmd
System.exit(probe.isFailed() ? 1 : 0);
}
+ private void printIsGossipRunning(PrintStream outs)
+ {
+ outs.println(probe.isGossipRunning() ? "running" : "not running");
+ }
+
private void getLoggingLevels(PrintStream out)
{
// what if some one set a very long logger name? 50 space may not be enough...
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 78dce76..849e368 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -782,6 +782,11 @@ public class NodeProbe
ssProxy.startGossiping();
}
+ public boolean isGossipRunning()
+ {
+ return ssProxy.isGossipRunning();
+ }
+
public void stopThriftServer()
{
ssProxy.stopRPCServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
----------------------------------------------------------------------
diff --git a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
index fa2b39c..523335e 100644
--- a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
+++ b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
@@ -100,6 +100,9 @@ commands:
- name: gossipinfo
help: |
Shows the gossip information for the cluster
+ - name: statusgossip
+ help: |
+ Status of gossip
- name: invalidatekeycache
help: |
Invalidate the key cache
[7/8] git commit: Add 'nodetool statusgossip'
Posted by br...@apache.org.
Add 'nodetool statusgossip'
Patch by Jan Karlsson, reviewed by Brandon Williams for CASSANDRA-8125
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe8e92f8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe8e92f8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe8e92f8
Branch: refs/heads/cassandra-2.1
Commit: fe8e92f8f1ff3adec119c8eb219e024886561196
Parents: 02fa2fd
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:59:56 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:59:56 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StorageService.java | 6 ++++++
.../apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/java/org/apache/cassandra/tools/NodeTool.java | 14 ++++++++++++++
5 files changed, 29 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 50a540f..b1a8439 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -13,6 +13,7 @@
* Fix CREATE TABLE for CQL2 (CASSANDRA-8144)
* Avoid boxing in ColumnStats min/max trackers (CASSANDRA-8109)
Merged from 2.0:
+ * Add 'nodetool statusgossip' (CASSANDRA-8125)
* Improve client notification that nodes are ready for requests (CASSANDRA-7510)
* Handle negative timestamp in writetime method (CASSANDRA-8139)
* Pig: Remove errant LIMIT clause in CqlNativeStorage (CASSANDRA-8166)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 84a6c14..a49dfc3 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -306,6 +306,12 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
// should only be called via JMX
+ public boolean isGossipRunning()
+ {
+ return Gossiper.instance.isEnabled();
+ }
+
+ // should only be called via JMX
public void startRPCServer()
{
if (daemon == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 8bb13ae..8ae44ff 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -398,6 +398,9 @@ public interface StorageServiceMBean extends NotificationEmitter
// allows a user to recover a forcibly 'killed' node
public void startGossiping();
+ // allows a user to see whether gossip is running or not
+ public boolean isGossipRunning();
+
// allows a user to forcibly completely stop cassandra
public void stopDaemon();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 7faec72..d495786 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -829,6 +829,11 @@ public class NodeProbe implements AutoCloseable
ssProxy.startGossiping();
}
+ public boolean isGossipRunning()
+ {
+ return ssProxy.isGossipRunning();
+ }
+
public void stopThriftServer()
{
ssProxy.stopRPCServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 d5180f0..39bc4fd 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -127,6 +127,7 @@ public class NodeTool
ListSnapshots.class,
Status.class,
StatusBinary.class,
+ StatusGossip.class,
StatusThrift.class,
Stop.class,
StopDaemon.class,
@@ -2136,6 +2137,19 @@ public class NodeTool
}
}
+ @Command(name = "statusgossip", description = "Status of gossip")
+ public static class StatusGossip extends NodeToolCmd
+ {
+ @Override
+ public void execute(NodeProbe probe)
+ {
+ System.out.println(
+ probe.isGossipRunning()
+ ? "running"
+ : "not running");
+ }
+ }
+
@Command(name = "statusthrift", description = "Status of thrift server")
public static class StatusThrift extends NodeToolCmd
{
[8/8] git commit: Merge branch 'cassandra-2.1' into trunk
Posted by br...@apache.org.
Merge branch 'cassandra-2.1' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/931a5186
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/931a5186
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/931a5186
Branch: refs/heads/trunk
Commit: 931a51869cda16f69e9b1ed4e4575c1dcbfb4dd0
Parents: 57b5fb6 fe8e92f
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 15:00:33 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 15:00:33 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StorageService.java | 6 ++++++
.../apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/java/org/apache/cassandra/tools/NodeTool.java | 14 ++++++++++++++
5 files changed, 29 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/931a5186/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/931a5186/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/931a5186/src/java/org/apache/cassandra/service/StorageServiceMBean.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/931a5186/src/java/org/apache/cassandra/tools/NodeProbe.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/931a5186/src/java/org/apache/cassandra/tools/NodeTool.java
----------------------------------------------------------------------
[3/8] git commit: Add 'nodetool statusgossip'
Posted by br...@apache.org.
Add 'nodetool statusgossip'
Patch by Jan Karlsson, reviewed by Brandon Williams for CASSANDRA-8125
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/83d4762a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/83d4762a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/83d4762a
Branch: refs/heads/trunk
Commit: 83d4762a6d6c28c792fadc1d7f228600097d924f
Parents: 5548bf4
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:58:04 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:58:04 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/StorageService.java | 6 ++++++
.../org/apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeCmd.java | 8 ++++++++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++
6 files changed, 26 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 0ec3ff1..97fb94a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.12:
+ * Add 'nodetool statusgossip' (CASSANDRA-8125)
* Improve client notification that nodes are ready for requests (CASSANDRA-7510)
* Handle negative timestamp in writetime method (CASSANDRA-8139)
* Pig: Remove errant LIMIT clause in CqlNativeStorage (CASSANDRA-8166)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 1f831b9..066544a 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -293,6 +293,12 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
}
+ //should only be called via JMX
+ public boolean isGossipRunning()
+ {
+ return Gossiper.instance.isEnabled();
+ }
+
// should only be called via JMX
public void startRPCServer()
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 6308aa5..0e2f55d 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -392,6 +392,9 @@ public interface StorageServiceMBean extends NotificationEmitter
// allows a user to recover a forcibly 'killed' node
public void startGossiping();
+ // allows a user to see whether gossip is running or not
+ public boolean isGossipRunning();
+
// allows a user to forcibly completely stop cassandra
public void stopDaemon();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 d9f3607..a397244 100644
--- a/src/java/org/apache/cassandra/tools/NodeCmd.java
+++ b/src/java/org/apache/cassandra/tools/NodeCmd.java
@@ -27,6 +27,7 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.ExecutionException;
+
import javax.management.openmbean.TabularData;
import com.google.common.base.Joiner;
@@ -171,6 +172,7 @@ public class NodeCmd
SNAPSHOT,
STATUS,
STATUSBINARY,
+ STATUSGOSSIP,
STATUSTHRIFT,
STOP,
STOPDAEMON,
@@ -1246,6 +1248,7 @@ public class NodeCmd
case STATUSBINARY : nodeCmd.printIsNativeTransportRunning(System.out); break;
case DISABLEGOSSIP : probe.stopGossiping(); break;
case ENABLEGOSSIP : probe.startGossiping(); break;
+ case STATUSGOSSIP : nodeCmd.printIsGossipRunning(System.out); break;
case DISABLEHANDOFF : probe.disableHintedHandoff(); break;
case ENABLEHANDOFF :
if (arguments.length > 0) { probe.enableHintedHandoff(arguments[0]); }
@@ -1494,6 +1497,11 @@ public class NodeCmd
System.exit(probe.isFailed() ? 1 : 0);
}
+ private void printIsGossipRunning(PrintStream outs)
+ {
+ outs.println(probe.isGossipRunning() ? "running" : "not running");
+ }
+
private void getLoggingLevels(PrintStream out)
{
// what if some one set a very long logger name? 50 space may not be enough...
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 78dce76..849e368 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -782,6 +782,11 @@ public class NodeProbe
ssProxy.startGossiping();
}
+ public boolean isGossipRunning()
+ {
+ return ssProxy.isGossipRunning();
+ }
+
public void stopThriftServer()
{
ssProxy.stopRPCServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
----------------------------------------------------------------------
diff --git a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
index fa2b39c..523335e 100644
--- a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
+++ b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
@@ -100,6 +100,9 @@ commands:
- name: gossipinfo
help: |
Shows the gossip information for the cluster
+ - name: statusgossip
+ help: |
+ Status of gossip
- name: invalidatekeycache
help: |
Invalidate the key cache
[4/8] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/02fa2fd4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/02fa2fd4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/02fa2fd4
Branch: refs/heads/cassandra-2.1
Commit: 02fa2fd42bb93a3cc0e6ac7d7af7e7bdc6a09a7b
Parents: 399a4ec 83d4762
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:59:00 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:59:00 2014 -0600
----------------------------------------------------------------------
----------------------------------------------------------------------
[6/8] git commit: Add 'nodetool statusgossip'
Posted by br...@apache.org.
Add 'nodetool statusgossip'
Patch by Jan Karlsson, reviewed by Brandon Williams for CASSANDRA-8125
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fe8e92f8
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fe8e92f8
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fe8e92f8
Branch: refs/heads/trunk
Commit: fe8e92f8f1ff3adec119c8eb219e024886561196
Parents: 02fa2fd
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:59:56 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:59:56 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StorageService.java | 6 ++++++
.../apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/java/org/apache/cassandra/tools/NodeTool.java | 14 ++++++++++++++
5 files changed, 29 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 50a540f..b1a8439 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -13,6 +13,7 @@
* Fix CREATE TABLE for CQL2 (CASSANDRA-8144)
* Avoid boxing in ColumnStats min/max trackers (CASSANDRA-8109)
Merged from 2.0:
+ * Add 'nodetool statusgossip' (CASSANDRA-8125)
* Improve client notification that nodes are ready for requests (CASSANDRA-7510)
* Handle negative timestamp in writetime method (CASSANDRA-8139)
* Pig: Remove errant LIMIT clause in CqlNativeStorage (CASSANDRA-8166)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 84a6c14..a49dfc3 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -306,6 +306,12 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
// should only be called via JMX
+ public boolean isGossipRunning()
+ {
+ return Gossiper.instance.isEnabled();
+ }
+
+ // should only be called via JMX
public void startRPCServer()
{
if (daemon == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 8bb13ae..8ae44ff 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -398,6 +398,9 @@ public interface StorageServiceMBean extends NotificationEmitter
// allows a user to recover a forcibly 'killed' node
public void startGossiping();
+ // allows a user to see whether gossip is running or not
+ public boolean isGossipRunning();
+
// allows a user to forcibly completely stop cassandra
public void stopDaemon();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 7faec72..d495786 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -829,6 +829,11 @@ public class NodeProbe implements AutoCloseable
ssProxy.startGossiping();
}
+ public boolean isGossipRunning()
+ {
+ return ssProxy.isGossipRunning();
+ }
+
public void stopThriftServer()
{
ssProxy.stopRPCServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/fe8e92f8/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 d5180f0..39bc4fd 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -127,6 +127,7 @@ public class NodeTool
ListSnapshots.class,
Status.class,
StatusBinary.class,
+ StatusGossip.class,
StatusThrift.class,
Stop.class,
StopDaemon.class,
@@ -2136,6 +2137,19 @@ public class NodeTool
}
}
+ @Command(name = "statusgossip", description = "Status of gossip")
+ public static class StatusGossip extends NodeToolCmd
+ {
+ @Override
+ public void execute(NodeProbe probe)
+ {
+ System.out.println(
+ probe.isGossipRunning()
+ ? "running"
+ : "not running");
+ }
+ }
+
@Command(name = "statusthrift", description = "Status of thrift server")
public static class StatusThrift extends NodeToolCmd
{
[5/8] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1
Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/02fa2fd4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/02fa2fd4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/02fa2fd4
Branch: refs/heads/trunk
Commit: 02fa2fd42bb93a3cc0e6ac7d7af7e7bdc6a09a7b
Parents: 399a4ec 83d4762
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:59:00 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:59:00 2014 -0600
----------------------------------------------------------------------
----------------------------------------------------------------------
[2/8] git commit: Add 'nodetool statusgossip'
Posted by br...@apache.org.
Add 'nodetool statusgossip'
Patch by Jan Karlsson, reviewed by Brandon Williams for CASSANDRA-8125
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/83d4762a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/83d4762a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/83d4762a
Branch: refs/heads/cassandra-2.1
Commit: 83d4762a6d6c28c792fadc1d7f228600097d924f
Parents: 5548bf4
Author: Brandon Williams <br...@apache.org>
Authored: Mon Nov 3 14:58:04 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Mon Nov 3 14:58:04 2014 -0600
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/StorageService.java | 6 ++++++
.../org/apache/cassandra/service/StorageServiceMBean.java | 3 +++
src/java/org/apache/cassandra/tools/NodeCmd.java | 8 ++++++++
src/java/org/apache/cassandra/tools/NodeProbe.java | 5 +++++
src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml | 3 +++
6 files changed, 26 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 0ec3ff1..97fb94a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.12:
+ * Add 'nodetool statusgossip' (CASSANDRA-8125)
* Improve client notification that nodes are ready for requests (CASSANDRA-7510)
* Handle negative timestamp in writetime method (CASSANDRA-8139)
* Pig: Remove errant LIMIT clause in CqlNativeStorage (CASSANDRA-8166)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 1f831b9..066544a 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -293,6 +293,12 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
}
}
+ //should only be called via JMX
+ public boolean isGossipRunning()
+ {
+ return Gossiper.instance.isEnabled();
+ }
+
// should only be called via JMX
public void startRPCServer()
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 6308aa5..0e2f55d 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -392,6 +392,9 @@ public interface StorageServiceMBean extends NotificationEmitter
// allows a user to recover a forcibly 'killed' node
public void startGossiping();
+ // allows a user to see whether gossip is running or not
+ public boolean isGossipRunning();
+
// allows a user to forcibly completely stop cassandra
public void stopDaemon();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 d9f3607..a397244 100644
--- a/src/java/org/apache/cassandra/tools/NodeCmd.java
+++ b/src/java/org/apache/cassandra/tools/NodeCmd.java
@@ -27,6 +27,7 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.ExecutionException;
+
import javax.management.openmbean.TabularData;
import com.google.common.base.Joiner;
@@ -171,6 +172,7 @@ public class NodeCmd
SNAPSHOT,
STATUS,
STATUSBINARY,
+ STATUSGOSSIP,
STATUSTHRIFT,
STOP,
STOPDAEMON,
@@ -1246,6 +1248,7 @@ public class NodeCmd
case STATUSBINARY : nodeCmd.printIsNativeTransportRunning(System.out); break;
case DISABLEGOSSIP : probe.stopGossiping(); break;
case ENABLEGOSSIP : probe.startGossiping(); break;
+ case STATUSGOSSIP : nodeCmd.printIsGossipRunning(System.out); break;
case DISABLEHANDOFF : probe.disableHintedHandoff(); break;
case ENABLEHANDOFF :
if (arguments.length > 0) { probe.enableHintedHandoff(arguments[0]); }
@@ -1494,6 +1497,11 @@ public class NodeCmd
System.exit(probe.isFailed() ? 1 : 0);
}
+ private void printIsGossipRunning(PrintStream outs)
+ {
+ outs.println(probe.isGossipRunning() ? "running" : "not running");
+ }
+
private void getLoggingLevels(PrintStream out)
{
// what if some one set a very long logger name? 50 space may not be enough...
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/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 78dce76..849e368 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -782,6 +782,11 @@ public class NodeProbe
ssProxy.startGossiping();
}
+ public boolean isGossipRunning()
+ {
+ return ssProxy.isGossipRunning();
+ }
+
public void stopThriftServer()
{
ssProxy.stopRPCServer();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/83d4762a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
----------------------------------------------------------------------
diff --git a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
index fa2b39c..523335e 100644
--- a/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
+++ b/src/resources/org/apache/cassandra/tools/NodeToolHelp.yaml
@@ -100,6 +100,9 @@ commands:
- name: gossipinfo
help: |
Shows the gossip information for the cluster
+ - name: statusgossip
+ help: |
+ Status of gossip
- name: invalidatekeycache
help: |
Invalidate the key cache