[jbosscache-commits] JBoss Cache SVN: r5927 - in core/trunk/src/test/java/org/jboss/cache: util/internals and 1 other directory.

jbosscache-commits at lists.jboss.org jbosscache-commits at lists.jboss.org
Mon Jun 2 12:12:44 EDT 2008


Author: mircea.markus
Date: 2008-06-02 12:12:44 -0400 (Mon, 02 Jun 2008)
New Revision: 5927

Modified:
   core/trunk/src/test/java/org/jboss/cache/optimistic/AsyncCacheTest.java
   core/trunk/src/test/java/org/jboss/cache/util/internals/ReplicationListener.java
Log:
rolledback thread sleeps removals - new view propagation does not necesarily mean that state transfer is finished

Modified: core/trunk/src/test/java/org/jboss/cache/optimistic/AsyncCacheTest.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/optimistic/AsyncCacheTest.java	2008-06-02 15:20:57 UTC (rev 5926)
+++ core/trunk/src/test/java/org/jboss/cache/optimistic/AsyncCacheTest.java	2008-06-02 16:12:44 UTC (rev 5927)
@@ -9,7 +9,6 @@
 import org.jboss.cache.config.Configuration;
 import org.jboss.cache.loader.SamplePojo;
 import org.jboss.cache.util.TestingUtil;
-import org.jboss.cache.util.internals.ReplicationListener;
 import org.jboss.cache.transaction.TransactionSetup;
 import static org.testng.AssertJUnit.*;
 import org.testng.annotations.AfterMethod;
@@ -23,14 +22,12 @@
 public class AsyncCacheTest extends AbstractOptimisticTestCase
 {
    private CacheSPI<Object, Object> cache, cache2;
-   ReplicationListener replListener2;
 
    @BeforeMethod(alwaysRun = true)
    public void setUp() throws Exception
    {
       cache = createReplicatedCache(Configuration.CacheMode.REPL_ASYNC);
       cache2 = createReplicatedCache(Configuration.CacheMode.REPL_ASYNC);
-      replListener2 = new ReplicationListener(cache2);
    }
 
    @AfterMethod(alwaysRun = true)
@@ -66,13 +63,11 @@
 
       SamplePojo pojo = new SamplePojo(21, "test");
 
-      replListener2.expectAny();
       cache.put("/one/two", "key1", pojo);
 
       //GlobalTransaction globalTransaction = cache.getCurrentTransaction(tx);
       assertNotNull(mgr.getTransaction());
       mgr.commit();
-      replListener2.waitForReplicationToOccur(1000);
 
       assertNull(mgr.getTransaction());
 
@@ -84,6 +79,8 @@
       assertTrue(cache.exists(Fqn.fromString("/one")));
       assertEquals(pojo, cache.get(Fqn.fromString("/one/two"), "key1"));
 
+      // allow changes to replicate since this is async
+      TestingUtil.sleepThread((long) 1000);
 
       assertEquals(0, cache2.getTransactionTable().getNumGlobalTransactions());
       assertEquals(0, cache2.getTransactionTable().getNumLocalTransactions());
@@ -109,12 +106,10 @@
 
       SamplePojo pojo = new SamplePojo(21, "test");
 
-      replListener2.expectAny();
       cache.put("/one/two", "key1", pojo);
 
       assertNotNull(mgr.getTransaction());
       mgr.commit();
-      replListener2.waitForReplicationToOccur(1000);
 
       assertNull(mgr.getTransaction());
 
@@ -126,7 +121,9 @@
       assertTrue(cache.exists(Fqn.fromString("/one")));
       assertEquals(pojo, cache.get(Fqn.fromString("/one/two"), "key1"));
 
-      
+      // let the async calls complete
+      TestingUtil.sleepThread((long) 1000);
+
       assertEquals(0, cache2.getTransactionTable().getNumGlobalTransactions());
       assertEquals(0, cache2.getTransactionTable().getNumLocalTransactions());
 

Modified: core/trunk/src/test/java/org/jboss/cache/util/internals/ReplicationListener.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/util/internals/ReplicationListener.java	2008-06-02 15:20:57 UTC (rev 5926)
+++ core/trunk/src/test/java/org/jboss/cache/util/internals/ReplicationListener.java	2008-06-02 16:12:44 UTC (rev 5927)
@@ -119,6 +119,7 @@
          }
          finally
          {
+            System.out.println("Processed command: " + realOne);
             Iterator<Class<? extends ReplicableCommand>> it = expectedCommands.iterator();
             while (it.hasNext())
             {
@@ -209,7 +210,9 @@
     */
    public void waitForReplicationToOccur(long timeoutMillis)
    {
+      System.out.println("enter... ReplicationListener.waitForReplicationToOccur");
       waitForReplicationToOccur(timeoutMillis, TimeUnit.MILLISECONDS);
+      System.out.println("exit... ReplicationListener.waitForReplicationToOccur");
    }
 
    /**




More information about the jbosscache-commits mailing list