Repository: cassandra
Updated Branches:
  refs/heads/trunk 59123b6f7 -> 17055bfdb


CASSANDRA-7635, rebase for 2.1


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

Branch: refs/heads/trunk
Commit: e0c4c6e60b682630ecc1285d4def1a652d9203dc
Parents: fd5cf23
Author: Sylvain Lebresne <sylv...@datastax.com>
Authored: Thu Aug 7 16:06:39 2014 +0200
Committer: Sylvain Lebresne <sylv...@datastax.com>
Committed: Thu Aug 7 16:06:39 2014 +0200

----------------------------------------------------------------------
 .../apache/cassandra/config/DatabaseDescriptor.java   |  5 +++++
 .../org/apache/cassandra/service/StorageService.java  |  6 ++++++
 .../apache/cassandra/service/StorageServiceMBean.java |  3 +++
 src/java/org/apache/cassandra/tools/NodeProbe.java    |  4 ++++
 src/java/org/apache/cassandra/tools/NodeTool.java     | 14 ++++++++++++++
 5 files changed, 32 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c4c6e6/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java 
b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 4e67c44..d1511ba 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -1354,6 +1354,11 @@ public class DatabaseDescriptor
         return conf.batchlog_replay_throttle_in_kb;
     }
 
+    public static void setHintedHandoffThrottleInKB(Integer throttleInKB)
+    {
+        conf.hinted_handoff_throttle_in_kb = throttleInKB;
+    }
+
     public static int getMaxHintsThread()
     {
         return conf.max_hints_delivery_threads;

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c4c6e6/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 46e6588..1e3f699 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3957,4 +3957,10 @@ public class StorageService extends 
NotificationBroadcasterSupport implements IE
     {
         DatabaseDescriptor.setTombstoneFailureThreshold(threshold);
     }
+
+    public void setHintedHandoffThrottleInKB(int throttleInKB)
+    {
+        DatabaseDescriptor.setHintedHandoffThrottleInKB(throttleInKB);
+        logger.info(String.format("Updated hinted_handoff_throttle_in_kb to 
%d", throttleInKB));
+    }
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c4c6e6/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 320f7dc..b4cc45b 100644
--- a/src/java/org/apache/cassandra/service/StorageServiceMBean.java
+++ b/src/java/org/apache/cassandra/service/StorageServiceMBean.java
@@ -511,4 +511,7 @@ public interface StorageServiceMBean extends 
NotificationEmitter
     public int getTombstoneFailureThreshold();
     /** Sets the threshold for abandoning queries with many tombstones */
     public void setTombstoneFailureThreshold(int tombstoneDebugThreshold);
+
+    /** Sets the hinted handoff throttle in kb per second, per delivery 
thread. */
+    public void setHintedHandoffThrottleInKB(int throttleInKB);
 }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c4c6e6/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 f14de12..1a2364b 100644
--- a/src/java/org/apache/cassandra/tools/NodeProbe.java
+++ b/src/java/org/apache/cassandra/tools/NodeProbe.java
@@ -602,6 +602,10 @@ public class NodeProbe implements AutoCloseable
         }
     }
 
+    public void setHintedHandoffThrottleInKB(int throttleInKB)
+    {
+        ssProxy.setHintedHandoffThrottleInKB(throttleInKB);
+    }
 
     public List<InetAddress> getEndpoints(String keyspace, String cf, String 
key)
     {

http://git-wip-us.apache.org/repos/asf/cassandra/blob/e0c4c6e6/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 63d48c4..b25edd9 100644
--- a/src/java/org/apache/cassandra/tools/NodeTool.java
+++ b/src/java/org/apache/cassandra/tools/NodeTool.java
@@ -114,6 +114,7 @@ public class NodeTool
                 RemoveNode.class,
                 Repair.class,
                 SetCacheCapacity.class,
+                SetHintedHandoffThrottleInKB.class,
                 SetCompactionThreshold.class,
                 SetCompactionThroughput.class,
                 SetStreamThroughput.class,
@@ -1673,6 +1674,19 @@ public class NodeTool
         }
     }
 
+    @Command(name = "sethintedhandoffthrottlekb", description =  "Set hinted 
handoff throttle in kb per second, per delivery thread.")
+    public static class SetHintedHandoffThrottleInKB extends NodeToolCmd
+    {
+        @Arguments(title = "throttle_in_kb", usage = "<value_in_kb_per_sec>", 
description = "Value in KB per second", required = true)
+        private Integer throttleInKB = null;
+
+        @Override
+        public void execute(NodeProbe probe)
+        {
+            probe.setHintedHandoffThrottleInKB(throttleInKB);
+        }
+    }
+
     @Command(name = "setstreamthroughput", description = "Set the MB/s 
throughput cap for streaming in the system, or 0 to disable throttling")
     public static class SetStreamThroughput extends NodeToolCmd
     {

Reply via email to