[infinispan-commits] Infinispan SVN: r900 - trunk/core/src/test/java/org/infinispan/distribution.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Thu Oct 1 12:14:15 EDT 2009


Author: manik.surtani at jboss.com
Date: 2009-10-01 12:14:14 -0400 (Thu, 01 Oct 2009)
New Revision: 900

Modified:
   trunk/core/src/test/java/org/infinispan/distribution/AsyncAPISyncDistTest.java
   trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java
Log:
Wait for init join sequence to complete

Modified: trunk/core/src/test/java/org/infinispan/distribution/AsyncAPISyncDistTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/AsyncAPISyncDistTest.java	2009-10-01 15:36:53 UTC (rev 899)
+++ trunk/core/src/test/java/org/infinispan/distribution/AsyncAPISyncDistTest.java	2009-10-01 16:14:14 UTC (rev 900)
@@ -4,14 +4,12 @@
 import org.infinispan.config.Configuration;
 import org.infinispan.context.Flag;
 import org.infinispan.replication.AsyncAPISyncReplTest;
-import org.infinispan.test.TestingUtil;
 import org.infinispan.test.data.Key;
 import org.infinispan.util.Util;
 import org.testng.annotations.Test;
 
 import java.util.List;
 import java.util.concurrent.TimeUnit;
-import java.util.concurrent.locks.LockSupport;
 
 @Test(groups = "functional", testName = "distribution.AsyncAPISyncDistTest")
 public class AsyncAPISyncDistTest extends AsyncAPISyncReplTest {
@@ -27,21 +25,9 @@
       c2 = l.get(1);
 
       // wait for any rehashing to complete
-      waitForInitRehashToComplete(c1, c2);
+      BaseDistFunctionalTest.waitForInitRehashToComplete(c1, c2);
    }
 
-   protected void waitForInitRehashToComplete(Cache... caches) {
-      int gracetime = 60000; // 60 seconds?
-      long giveup = System.currentTimeMillis() + gracetime;
-      for (Cache c: caches) {
-         DistributionManagerImpl dmi = (DistributionManagerImpl) TestingUtil.extractComponent(c, DistributionManager.class);
-         while (!dmi.joinComplete) {
-            if (System.currentTimeMillis() > giveup) throw new RuntimeException("Timed out waiting for initial join sequence to complete!");
-            LockSupport.parkNanos(TimeUnit.SECONDS.toNanos(1));
-         }
-      }
-   }
-
    @Override
    protected void assertOnAllCaches(Key k, String v) {
       Object real;

Modified: trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java	2009-10-01 15:36:53 UTC (rev 899)
+++ trunk/core/src/test/java/org/infinispan/distribution/BaseDistFunctionalTest.java	2009-10-01 16:14:14 UTC (rev 900)
@@ -22,6 +22,7 @@
 import java.util.List;
 import java.util.Random;
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.locks.LockSupport;
 import static java.util.concurrent.TimeUnit.SECONDS;
 
 @Test(groups = "functional", testName = "distribution.BaseDistFunctionalTest", enabled = false)
@@ -57,8 +58,22 @@
 
       cacheAddresses = new ArrayList<Address>(4);
       for (Cache cache : caches) cacheAddresses.add(cache.getCacheManager().getAddress());
+
+      waitForInitRehashToComplete(c1, c2, c3, c4);
+
    }
 
+   public static void waitForInitRehashToComplete(Cache... caches) {
+      int gracetime = 60000; // 60 seconds?
+      long giveup = System.currentTimeMillis() + gracetime;
+      for (Cache c: caches) {
+         DistributionManagerImpl dmi = (DistributionManagerImpl) TestingUtil.extractComponent(c, DistributionManager.class);
+         while (!dmi.joinComplete) {
+            if (System.currentTimeMillis() > giveup) throw new RuntimeException("Timed out waiting for initial join sequence to complete!");
+            LockSupport.parkNanos(TimeUnit.SECONDS.toNanos(1));
+         }
+      }
+   }
 
    // only used if the CH impl does not order the hash ring based on the order of the view.
    // in the case of the DefaultConsistentHash, the order is based on a has code of the addres modded by



More information about the infinispan-commits mailing list