[hibernate-commits] Hibernate SVN: r13933 - in core/trunk: testsuite/src/test/java/org/hibernate/test/legacy and 1 other directory.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Fri Aug 17 14:46:02 EDT 2007
Author: steve.ebersole at jboss.com
Date: 2007-08-17 14:46:02 -0400 (Fri, 17 Aug 2007)
New Revision: 13933
Modified:
core/trunk/testing/src/main/java/org/hibernate/junit/functional/FunctionalTestCase.java
core/trunk/testsuite/src/test/java/org/hibernate/test/legacy/MasterDetailTest.java
Log:
skip org.hibernate.test.legacy.MasterDetailTest#testCachedCollectionRefresh when connection is enforcing (at least) serializable isolation
Modified: core/trunk/testing/src/main/java/org/hibernate/junit/functional/FunctionalTestCase.java
===================================================================
--- core/trunk/testing/src/main/java/org/hibernate/junit/functional/FunctionalTestCase.java 2007-08-17 18:45:35 UTC (rev 13932)
+++ core/trunk/testing/src/main/java/org/hibernate/junit/functional/FunctionalTestCase.java 2007-08-17 18:46:02 UTC (rev 13933)
@@ -4,6 +4,7 @@
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
+import java.sql.Connection;
import org.hibernate.cfg.Configuration;
import org.hibernate.cfg.Mappings;
@@ -279,6 +280,29 @@
+ /**
+ * Do connections enforce SERIALIZABLE isolation...
+ *
+ * @return
+ * @throws Exception
+ */
+ protected boolean isSerializableIsolationEnforced() throws Exception {
+ Connection conn = null;
+ try {
+ conn = sfi().getConnectionProvider().getConnection();
+ return conn.getTransactionIsolation() >= Connection.TRANSACTION_SERIALIZABLE;
+ }
+ finally {
+ if ( conn != null ) {
+ try {
+ sfi().getConnectionProvider().closeConnection( conn );
+ }
+ catch ( Throwable ignore ) {
+ // ignore...
+ }
+ }
+ }
+ }
/**
* Is connection at least read committed?
Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/legacy/MasterDetailTest.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/legacy/MasterDetailTest.java 2007-08-17 18:45:35 UTC (rev 13932)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/legacy/MasterDetailTest.java 2007-08-17 18:46:02 UTC (rev 13933)
@@ -835,6 +835,10 @@
}
public void testCachedCollectionRefresh() throws Exception {
+ if ( isSerializableIsolationEnforced() ) {
+ reportSkip( "SERIALIZABLE isolation", "cached collection refreshing" );
+ return;
+ }
Session s = openSession();
Category c = new Category();
List list = new ArrayList();
@@ -853,7 +857,9 @@
s.close();
s = openSession();
- if ( (getDialect() instanceof MySQLDialect) ) s.connection().setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
+ if ( (getDialect() instanceof MySQLDialect) ) {
+ s.connection().setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
+ }
c = (Category) s.load(Category.class, id);
c.getSubcategories().size(); //force load
More information about the hibernate-commits
mailing list