Author: jbellis
Date: Wed Aug 31 18:17:06 2011
New Revision: 1163731

URL: http://svn.apache.org/viewvc?rev=1163731&view=rev
Log:
add delay parameter to removeToken so RemoveTest doesn't have to wait for full 
RING_DELAY
patch by jbellis

Modified:
    cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
    cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
    cassandra/trunk/test/unit/org/apache/cassandra/service/RemoveTest.java

Modified: cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java?rev=1163731&r1=1163730&r2=1163731&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java Wed Aug 31 
18:17:06 2011
@@ -362,8 +362,9 @@ public class Gossiper implements IFailur
      * @param endpoint - the endpoint being removed
      * @param token - the token being removed
      * @param mytoken - my own token for replication coordination
+     * @param delay
      */
-    public void advertiseRemoving(InetAddress endpoint, Token token, Token 
mytoken)
+    public void advertiseRemoving(InetAddress endpoint, Token token, Token 
mytoken, int delay)
     {
         EndpointState epState = endpointStateMap.get(endpoint);
         // remember this node's generation
@@ -372,7 +373,7 @@ public class Gossiper implements IFailur
         logger.info("Sleeping for " + StorageService.RING_DELAY + "ms to 
ensure " + endpoint + " does not change");
         try
         {
-            Thread.sleep(StorageService.RING_DELAY);
+            Thread.sleep(delay);
         }
         catch (InterruptedException e)
         {

Modified: 
cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java?rev=1163731&r1=1163730&r2=1163731&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java 
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java 
Wed Aug 31 18:17:06 2011
@@ -27,6 +27,7 @@ import java.net.UnknownHostException;
 import java.nio.ByteBuffer;
 import java.util.*;
 import java.util.concurrent.*;
+import javax.lang.model.type.TypeKind;
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
 
@@ -2107,6 +2108,11 @@ public class StorageService implements I
      */
     public void removeToken(String tokenString)
     {
+        removeToken(tokenString, RING_DELAY);
+    }
+
+    public void removeToken(String tokenString, int delay)
+    {
         InetAddress myAddress = FBUtilities.getBroadcastAddress();
         Token localToken = tokenMetadata_.getToken(myAddress);
         Token token = partitioner.getTokenFactory().fromString(tokenString);
@@ -2153,7 +2159,7 @@ public class StorageService implements I
         calculatePendingRanges();
         // the gossiper will handle spoofing this node's state to 
REMOVING_TOKEN for us
         // we add our own token so other nodes to let us know when they're done
-        Gossiper.instance.advertiseRemoving(endpoint, token, localToken);
+        Gossiper.instance.advertiseRemoving(endpoint, token, localToken, 
delay);
 
         // kick off streaming commands
         restoreReplicaCount(endpoint, myAddress);

Modified: cassandra/trunk/test/unit/org/apache/cassandra/service/RemoveTest.java
URL: 
http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/service/RemoveTest.java?rev=1163731&r1=1163730&r2=1163731&view=diff
==============================================================================
--- cassandra/trunk/test/unit/org/apache/cassandra/service/RemoveTest.java 
(original)
+++ cassandra/trunk/test/unit/org/apache/cassandra/service/RemoveTest.java Wed 
Aug 31 18:17:06 2011
@@ -124,7 +124,7 @@ public class RemoveTest extends CleanupH
             {
                 try
                 {
-                    ss.removeToken(token);
+                    ss.removeToken(token, 0);
                 }
                 catch (Exception e)
                 {


Reply via email to