[jbosscache-commits] JBoss Cache SVN: r7572 - core/trunk/src/test/java/org/jboss/cache/transaction/pessimistic.
jbosscache-commits at lists.jboss.org
jbosscache-commits at lists.jboss.org
Thu Jan 22 16:02:50 EST 2009
Author: mircea.markus
Date: 2009-01-22 16:02:49 -0500 (Thu, 22 Jan 2009)
New Revision: 7572
Modified:
core/trunk/src/test/java/org/jboss/cache/transaction/pessimistic/AsyncRollbackTxTest.java
Log:
more strict concurrency control
Modified: core/trunk/src/test/java/org/jboss/cache/transaction/pessimistic/AsyncRollbackTxTest.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/transaction/pessimistic/AsyncRollbackTxTest.java 2009-01-22 19:48:46 UTC (rev 7571)
+++ core/trunk/src/test/java/org/jboss/cache/transaction/pessimistic/AsyncRollbackTxTest.java 2009-01-22 21:02:49 UTC (rev 7572)
@@ -3,15 +3,19 @@
import org.jboss.cache.CacheSPI;
import org.jboss.cache.Fqn;
import org.jboss.cache.UnitTestCacheFactory;
+import org.jboss.cache.transaction.AsyncRollbackTransactionManager;
import org.jboss.cache.config.Configuration;
import org.jboss.cache.util.TestingUtil;
import static org.testng.AssertJUnit.*;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
+import org.apache.commons.logging.LogFactory;
+import org.apache.commons.logging.Log;
import javax.transaction.SystemException;
import javax.transaction.TransactionManager;
+import javax.transaction.Status;
/**
* Test behaviour of async rollback timeouted transaction
@@ -19,11 +23,11 @@
* @author <a href="mailto:jhalat at infovide.pl">Jacek Halat</a>
* @since 1.4.0
*/
- at Test(groups = {"functional"}, sequential = true, testName = "transaction.pessimistic.AsyncRollbackTxTest")
+ at Test(groups = {"functional"}, testName = "transaction.pessimistic.AsyncRollbackTxTest")
public class AsyncRollbackTxTest
{
private CacheSPI<String, String> cache;
- private TransactionManager tm;
+ private AsyncRollbackTransactionManager tm;
private Fqn fqn = Fqn.fromString("/test");
// This sleep time (millis) should be longer than the transaction timeout time.
private long sleepTime = 2500;
@@ -39,7 +43,7 @@
c.setSerializationExecutorPoolSize(0);
UnitTestCacheFactory<String, String> instance = new UnitTestCacheFactory<String, String>();
cache = (CacheSPI<String, String>) instance.createCache(c, getClass());
- tm = cache.getConfiguration().getRuntimeConfig().getTransactionManager();
+ tm = (AsyncRollbackTransactionManager) cache.getConfiguration().getRuntimeConfig().getTransactionManager();
tm.setTransactionTimeout(txTimeout);
}
@@ -215,8 +219,14 @@
cache.get(fqn, "k");// obtain read lock on node
}
- // sleep to ensure tx times out.
- sleep(2500);
+ for (int i =0; i < 100; i++) //max 50 secs
+ {
+ if (tm.getTransaction().getStatus() == Status.STATUS_ROLLEDBACK)
+ {
+ break;
+ }
+ Thread.sleep(500);
+ }
if (commit)
{
More information about the jbosscache-commits
mailing list