[jboss-cvs] JBossAS SVN: r87843 - branches/Branch_5_x/testsuite/src/main/org/jboss/test/cluster/lock.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Apr 25 09:22:13 EDT 2009


Author: bstansberry at jboss.com
Date: 2009-04-25 09:22:13 -0400 (Sat, 25 Apr 2009)
New Revision: 87843

Modified:
   branches/Branch_5_x/testsuite/src/main/org/jboss/test/cluster/lock/ClusteredLockManagerTestBase.java
Log:
[JBAS-5552] Reduce timing sensitivity

Modified: branches/Branch_5_x/testsuite/src/main/org/jboss/test/cluster/lock/ClusteredLockManagerTestBase.java
===================================================================
--- branches/Branch_5_x/testsuite/src/main/org/jboss/test/cluster/lock/ClusteredLockManagerTestBase.java	2009-04-25 12:41:48 UTC (rev 87842)
+++ branches/Branch_5_x/testsuite/src/main/org/jboss/test/cluster/lock/ClusteredLockManagerTestBase.java	2009-04-25 13:22:13 UTC (rev 87843)
@@ -442,7 +442,7 @@
       replay(partition);
       replay(handler);
       
-      LocalLockCaller winner = new LocalLockCaller(testee, null, null, answerDoneLatch);
+      LocalLockCaller winner = new LocalLockCaller(testee, null, null, answerDoneLatch, 500);
       
       Thread t1 = new Thread(winner);
       t1.setDaemon(true);
@@ -461,7 +461,7 @@
          answerAwaitLatch.countDown();
          
          // wait for t1 to complete
-         assertTrue(answerDoneLatch.await(2, TimeUnit.SECONDS));
+         assertTrue(answerDoneLatch.await(5, TimeUnit.SECONDS));
          
          verify(handler);
          
@@ -539,7 +539,7 @@
          answerAwaitLatch.countDown();
          
          // wait for t1 to complete
-         assertTrue(finishedLatch.await(1, TimeUnit.SECONDS));
+         assertTrue(finishedLatch.await(5, TimeUnit.SECONDS));
          
          verify(handler);
          
@@ -563,8 +563,11 @@
       LocalLockHandler handler = testee.getLocalHandler();
       final RpcTarget target = testeeSet.target;
       
-      ClusterNode inferiorCaller = testee.getCurrentView().get(2);
-      assertFalse(node1.equals(inferiorCaller));
+      ClusterNode inferiorNode = testee.getCurrentView().get(2);
+      assertFalse(node1.equals(inferiorNode));
+      
+      ClusterNode superiorNode = testee.getCurrentView().get(0);
+      assertFalse(node1.equals(superiorNode));
 
       resetToStrict(partition);    
       makeThreadSafe(partition, true);
@@ -576,10 +579,11 @@
       CountDownLatch answerStartLatch = new CountDownLatch(1);
       
       ArrayList<RemoteLockResponse> rspList = new ArrayList<RemoteLockResponse>();
-      rspList.add(new RemoteLockResponse(null, RemoteLockResponse.Flag.OK));
-      rspList.add(new RemoteLockResponse(null, RemoteLockResponse.Flag.REJECT, inferiorCaller));
+      rspList.add(new RemoteLockResponse(superiorNode, RemoteLockResponse.Flag.OK));
+      rspList.add(new RemoteLockResponse(inferiorNode, RemoteLockResponse.Flag.REJECT, inferiorNode));
       
-      BlockingAnswer<ArrayList<RemoteLockResponse>> caller1Answer = new BlockingAnswer<ArrayList<RemoteLockResponse>>(rspList, answerAwaitLatch, answerStartLatch, null);
+      BlockingAnswer<ArrayList<RemoteLockResponse>> caller1Answer = 
+         new BlockingAnswer<ArrayList<RemoteLockResponse>>(rspList, answerAwaitLatch, answerStartLatch, null);
       
       expect(partition.callMethodOnCluster(eq("test"), 
                                            eq("remoteLock"), 
@@ -594,8 +598,8 @@
             eq(true))).andReturn(new ArrayList<Object>()); 
       
       rspList = new ArrayList<RemoteLockResponse>();
-      rspList.add(new RemoteLockResponse(null, RemoteLockResponse.Flag.OK));
-      rspList.add(new RemoteLockResponse(null, RemoteLockResponse.Flag.OK));
+      rspList.add(new RemoteLockResponse(superiorNode, RemoteLockResponse.Flag.OK));
+      rspList.add(new RemoteLockResponse(inferiorNode, RemoteLockResponse.Flag.OK));
       
       expect(partition.callMethodOnCluster(eq("test"), 
                                            eq("remoteLock"), 
@@ -609,9 +613,9 @@
       replay(handler);
 
       CountDownLatch finishedLatch = new CountDownLatch(1);
-      LocalLockCaller loser = new LocalLockCaller(testee, null, null, finishedLatch);
+      LocalLockCaller winner = new LocalLockCaller(testee, null, null, finishedLatch);
       
-      Thread t1 = new Thread(loser);
+      Thread t1 = new Thread(winner);
       t1.setDaemon(true);
       
       try
@@ -620,7 +624,7 @@
          assertTrue(answerStartLatch.await(1, TimeUnit.SECONDS));
          // t1 should now be blocking in caller1Answer
          
-         RemoteLockResponse rsp = target.remoteLock("test", inferiorCaller, 1);
+         RemoteLockResponse rsp = target.remoteLock("test", inferiorNode, 1);
          assertEquals(RemoteLockResponse.Flag.REJECT, rsp.flag);
          assertEquals(node1, rsp.holder);
          
@@ -628,13 +632,13 @@
          answerAwaitLatch.countDown();
          
          // wait for t1 to complete
-         assertTrue(finishedLatch.await(1, TimeUnit.SECONDS));
+         assertTrue(finishedLatch.await(5, TimeUnit.SECONDS));
          
          verify(handler);
          
-         rethrow("winner had an exception", loser.getException());
+         rethrow("winner had an exception", winner.getException());
          
-         Boolean locked = loser.getResult();         
+         Boolean locked = winner.getResult();         
          assertEquals(Boolean.TRUE, locked);
       }
       finally
@@ -909,17 +913,25 @@
    protected class LocalLockCaller extends AbstractCaller<Boolean>
    {
       private final AbstractClusterLockSupport target;
+      private final long timeout;
       
       public LocalLockCaller(AbstractClusterLockSupport target, CountDownLatch startLatch, 
             CountDownLatch proceedLatch, CountDownLatch finishLatch)
       {
+         this(target, startLatch, proceedLatch, finishLatch, 3000);
+      }
+      
+      public LocalLockCaller(AbstractClusterLockSupport target, CountDownLatch startLatch, 
+            CountDownLatch proceedLatch, CountDownLatch finishLatch, long timeout)
+      {
          super(startLatch, proceedLatch, finishLatch);
          this.target = target;
+         this.timeout = timeout;
       }
       
       protected Boolean execute()
       {         
-         return Boolean.valueOf(target.lock("test", 20));
+         return Boolean.valueOf(target.lock("test", timeout));
       }
    }
 




More information about the jboss-cvs-commits mailing list