[jboss-svn-commits] JBL Code SVN: r29254 - in labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna: reaper and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Sep 8 12:15:51 EDT 2009


Author: adinn
Date: 2009-09-08 12:15:51 -0400 (Tue, 08 Sep 2009)
New Revision: 29254

Modified:
   labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/CachedTest.java
   labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/reaper/ReaperTestCase3.java
Log:
added some further synchronization to test case 3 to ensure we exercise the functionality of th reaper -- fix for JBTM-567tests/classes/com/hp/mwtests/ts/arjuna/reaper/ReaperTestCase3.java

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/CachedTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/CachedTest.java	2009-09-08 16:10:02 UTC (rev 29253)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/CachedTest.java	2009-09-08 16:15:51 UTC (rev 29254)
@@ -92,11 +92,11 @@
     @Test
     public void test() throws Exception
     {
-        String cacheSize = "2048";
+        int cacheSize = 2048;
         int threads = 100;
         Thread[] t = new Thread[threads];
 
-        System.setProperty("com.arjuna.ats.internal.arjuna.objectstore.cacheStore.size", cacheSize);
+        arjPropertyManager.getObjectStoreEnvironmentBean().setCacheStoreSize(cacheSize);
 
         ObjectStore store = new ObjectStore(ArjunaNames.Implementation_ObjectStore_CacheStore());
 

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/reaper/ReaperTestCase3.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/reaper/ReaperTestCase3.java	2009-09-08 16:10:02 UTC (rev 29253)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/reaper/ReaperTestCase3.java	2009-09-08 16:15:51 UTC (rev 29254)
@@ -60,7 +60,7 @@
         // prevent_commit should not get called so we don't care about the arguments
         TestReapable reapable3 = new TestReapable(uid3, true, false, false, false);
         // enable a repeatable rendezvous before checking the reapable queue
-        // enableRendezvous("reaper1", true);
+        enableRendezvous("reaper1", true);
         // enable a repeatable rendezvous before processing a timed out reapable
         // enableRendezvous("reaper2", true);
         // enable a repeatable rendezvous before scheduling a reapable in the worker queue for cancellation
@@ -74,7 +74,7 @@
         // enable a repeatable rendezvous before marking a reapable as rollback only from the reaper thread
         // enableRendezvous("reaper7", true);
         // enable a repeatable rendezvous before checking the worker queue
-        // enableRendezvous("reaperworker1", true);
+        enableRendezvous("reaperworker1", true);
         // enable a repeatable rendezvous before marking a reapable as cancel
         // enableRendezvous("reaperworker2", true);
         // enable a repeatable rendezvous before calling cancel
@@ -98,11 +98,39 @@
 
         assertTrue(reaper.insert(reapable3, 4));
 
+        // latch the reaper before it checks the queue
+
+        triggerRendezvous("reaper1");
+
         // make sure they were all registered
 
         assertEquals(4, reaper.numberOfTransactions());
         assertEquals(4, reaper.numberOfTimeouts());
 
+        // ensure the first reapable is ready
+
+        triggerWait(1000);
+
+        // let the reaper process the first reapable then latch it again before it checks the queue
+
+        triggerRendezvous("reaper1");
+
+        triggerRendezvous("reaper1");
+
+        // latch the worker before it checks the worker queue
+
+        triggerRendezvous("reaperworker1");
+
+        // let the worker process the first reapable then latch it again before it checks the queue
+
+        triggerRendezvous("reaperworker1");
+
+        triggerRendezvous("reaperworker1");
+
+        // force a termination waiting for the normal timeout periods
+        // byteman rules will ensure that the reaper and reaperworker rendezvous get deleted
+        // under this call
+
         TransactionReaper.terminate(true);
 
         assertEquals(0, reaper.numberOfTransactions());



More information about the jboss-svn-commits mailing list