[jboss-cvs] JBossAS SVN: r109385 - in trunk: testsuite/src/main/org/jboss/test/cluster/defaultcfg/simpleweb/test and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Nov 19 01:04:16 EST 2010


Author: pferraro
Date: 2010-11-19 01:04:14 -0500 (Fri, 19 Nov 2010)
New Revision: 109385

Modified:
   trunk/component-matrix/pom.xml
   trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/simpleweb/test/BuddyReplicationFailoverUnitTestCase.java
   trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java
Log:
[JBAS-8613] Fixes remaining BuddyReplicationFailoverUnitTestCase failure.

Modified: trunk/component-matrix/pom.xml
===================================================================
--- trunk/component-matrix/pom.xml	2010-11-19 05:27:55 UTC (rev 109384)
+++ trunk/component-matrix/pom.xml	2010-11-19 06:04:14 UTC (rev 109385)
@@ -82,7 +82,7 @@
     <version.org.jboss.cluster.server.core>1.0.0.CR2</version.org.jboss.cluster.server.core>
     <version.org.jboss.cluster.server.ispn>1.0.0.CR6</version.org.jboss.cluster.server.ispn>
     <version.org.jboss.cluster.cache.spi>3.0.0.CR1</version.org.jboss.cluster.cache.spi>
-    <version.org.jboss.cluster.cache.ispn>1.0.0.CR7</version.org.jboss.cluster.cache.ispn>
+    <version.org.jboss.cluster.cache.ispn>1.0.0.CR8</version.org.jboss.cluster.cache.ispn>
     <version.org.jboss.common.core>2.2.17.GA</version.org.jboss.common.core>
     <version.org.jboss.deployers>2.2.0.Alpha8</version.org.jboss.deployers>
     <version.org.jboss.ejb3.depchain>1.0.0-alpha-20</version.org.jboss.ejb3.depchain>

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/simpleweb/test/BuddyReplicationFailoverUnitTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/simpleweb/test/BuddyReplicationFailoverUnitTestCase.java	2010-11-19 05:27:55 UTC (rev 109384)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/simpleweb/test/BuddyReplicationFailoverUnitTestCase.java	2010-11-19 06:04:14 UTC (rev 109385)
@@ -35,12 +35,13 @@
 import junit.framework.Test;
 import junit.framework.TestCase;
 
-import org.infinispan.manager.CacheContainer;
+import org.infinispan.manager.EmbeddedCacheManager;
 import org.jboss.logging.Logger;
 import org.jboss.metadata.web.jboss.JBossWebMetaData;
 import org.jboss.metadata.web.jboss.ReplicationGranularity;
 import org.jboss.metadata.web.jboss.ReplicationTrigger;
 import org.jboss.test.cluster.testutil.CacheConfigTestSetup;
+import org.jboss.test.cluster.testutil.SessionTestUtil;
 import org.jboss.test.cluster.web.mocks.InvalidateSessionRequestHandler;
 import org.jboss.test.cluster.web.mocks.SetAttributesRequestHandler;
 import org.jboss.web.tomcat.service.session.JBossCacheManager;
@@ -52,7 +53,7 @@
  */
 public class BuddyReplicationFailoverUnitTestCase extends TestCase
 {
-   protected static CacheContainer[] cacheContainers = new CacheContainer[4];
+   protected static EmbeddedCacheManager[] cacheContainers = new EmbeddedCacheManager[4];
 
    protected static long testId = System.currentTimeMillis();
    
@@ -89,7 +90,14 @@
       {
          if (manager != null)
          {
-            manager.stop();
+            try
+            {
+               manager.stop();
+            }
+            catch (Exception e)
+            {
+               log.warn(e.getMessage(), e);
+            }
          }
       }
       
@@ -132,7 +140,7 @@
       
       this.log.info("Sleeping");
       
-      sleepThread(1100); 
+      sleepThread(1100);
       
       this.log.info("Run passivation");
       
@@ -170,8 +178,6 @@
       log.info("++++ Starting testFailoverAndFailBack ++++");
       
       String warname = String.valueOf(++testId);
-      try
-      {
       // A war with a maxInactive of 30 mins and no maxIdle
       this.startManagers(warname, 1800000, -1, -1);
       
@@ -182,6 +188,21 @@
       
       String id = setHandler.getSessionId();     
       
+      // Find a node 
+      int localIndex = 0;
+      int remoteIndex = 0;
+      for (int i = 0; i < managers.length; ++i)
+      {
+         if (managers[i].getDistributedCacheManager().isLocal(id))
+         {
+            localIndex = i;
+         }
+         else
+         {
+            remoteIndex = i;
+         }
+      }
+      
       // Modify
       log.info("modifying session");
       setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(1)), false);
@@ -191,38 +212,44 @@
       // Failover and modify
       log.info("failing over");
       setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(2)), false);
-      invokeRequest(managers[3], setHandler, id);      
+      invokeRequest(managers[localIndex], setHandler, id);      
       assertEquals(getAttributeValue(1), setHandler.getCheckedAttributes().get("count"));       
       
       // Modify
       log.info("modifying session");
       setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(3)), false);
-      invokeRequest(managers[3], setHandler, id);      
+      invokeRequest(managers[localIndex], setHandler, id);      
       assertEquals(getAttributeValue(2), setHandler.getCheckedAttributes().get("count"));     
       
+      // Failover and modify
+      log.info("failing over");
+      setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(2)), false);
+      invokeRequest(managers[remoteIndex], setHandler, id);      
+      assertEquals(getAttributeValue(3), setHandler.getCheckedAttributes().get("count"));       
+      
+      // Modify
+      log.info("modifying session");
+      setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(3)), false);
+      invokeRequest(managers[remoteIndex], setHandler, id);      
+      assertEquals(getAttributeValue(4), setHandler.getCheckedAttributes().get("count"));     
+      
       // Failback and modify
       log.info("failing back");
       setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(4)), false);
       invokeRequest(managers[0], setHandler, id);      
-      assertEquals(getAttributeValue(3), setHandler.getCheckedAttributes().get("count"));  
+      assertEquals(getAttributeValue(5), setHandler.getCheckedAttributes().get("count"));  
       
       // Invalidate 
       log.info("invalidating");
       InvalidateSessionRequestHandler invalidationHandler = new InvalidateSessionRequestHandler(Collections.singleton("count"), false);
       invokeRequest(managers[0], invalidationHandler, id);      
-      assertEquals(getAttributeValue(4), invalidationHandler.getCheckedAttributes().get("count"));
+      assertEquals(getAttributeValue(6), invalidationHandler.getCheckedAttributes().get("count"));
       
       // Reestablish
       log.info("re-establishing");
       setHandler = new SetAttributesRequestHandler(Collections.singletonMap("count", getAttributeValue(0)), false);
       invokeRequest(managers[0], invalidationHandler, id);      
       assertNull(setHandler.getCheckedAttributes().get("count"));      
-      }
-      catch (Throwable e)
-      {
-         log.error(e.getMessage(), e);
-         throw e;
-      }
    }
    
    protected void startManagers(String warname, int maxInactive, int maxIdle, int maxUnreplicated) throws Exception
@@ -234,5 +261,7 @@
          managers[i].init(warname, metadata);
          managers[i].start();
       }
+      
+      SessionTestUtil.blockUntilViewsReceived(cacheContainers, 5000L);
    }
 }

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java	2010-11-19 05:27:55 UTC (rev 109384)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java	2010-11-19 06:04:14 UTC (rev 109385)
@@ -57,6 +57,7 @@
 import org.infinispan.manager.DefaultCacheManager;
 import org.infinispan.manager.EmbeddedCacheManager;
 import org.infinispan.remoting.transport.Address;
+import org.infinispan.transaction.tm.BatchModeTransactionManager;
 import org.infinispan.util.concurrent.IsolationLevel;
 import org.jboss.ha.ispn.DefaultCacheContainer;
 import org.jboss.logging.Logger;
@@ -109,9 +110,7 @@
          @Override
          public <K, V> Cache<K, V> getCache(LocalDistributableSessionManager manager)
          {
-            Cache<K, V> cache = cacheContainer.getCache(manager.getName());
-            log.info("Using " + cache.getConfiguration().getCacheMode() + " mode cache for " + manager.getName());
-            return cache;
+            return cacheContainer.getCache(manager.getName());
          }
       };
       CacheSource jvmRouteCacheSource = new CacheSource()
@@ -187,6 +186,10 @@
       global.setStrictPeerToPeer(false);
       
       config = new Configuration();
+      config.setInvocationBatchingEnabled(true);
+      config.setIsolationLevel(IsolationLevel.REPEATABLE_READ);
+      config.setSyncReplTimeout(20000);
+      config.setLockAcquisitionTimeout(15000);
       config.setCacheMode(CacheMode.REPL_SYNC);
       config.setFetchInMemoryState(true);
       config.setSyncCommitPhase(true);



More information about the jboss-cvs-commits mailing list