[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