[hibernate-commits] Hibernate SVN: r19293 - in core/branches/Branch_3_5: entitymanager/src/test/java/org/hibernate/ejb/test/lock and 1 other directory.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Mon Apr 26 12:18:45 EDT 2010
Author: smarlow at redhat.com
Date: 2010-04-26 12:18:45 -0400 (Mon, 26 Apr 2010)
New Revision: 19293
Modified:
core/branches/Branch_3_5/core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java
core/branches/Branch_3_5/entitymanager/src/test/java/org/hibernate/ejb/test/lock/LockTest.java
Log:
HHH-5032 upgrade from optimistic to optimistic force does not work
Modified: core/branches/Branch_3_5/core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java
===================================================================
--- core/branches/Branch_3_5/core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java 2010-04-26 02:06:03 UTC (rev 19292)
+++ core/branches/Branch_3_5/core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java 2010-04-26 16:18:45 UTC (rev 19293)
@@ -3225,8 +3225,8 @@
readLoader :
createEntityLoader( LockMode.PESSIMISTIC_FORCE_INCREMENT )
);
- loaders.put( LockMode.OPTIMISTIC, readLoader );
- loaders.put( LockMode.OPTIMISTIC_FORCE_INCREMENT, readLoader );
+ loaders.put( LockMode.OPTIMISTIC, createEntityLoader( LockMode.OPTIMISTIC) );
+ loaders.put( LockMode.OPTIMISTIC_FORCE_INCREMENT, createEntityLoader(LockMode.OPTIMISTIC_FORCE_INCREMENT) );
loaders.put(
"merge",
Modified: core/branches/Branch_3_5/entitymanager/src/test/java/org/hibernate/ejb/test/lock/LockTest.java
===================================================================
--- core/branches/Branch_3_5/entitymanager/src/test/java/org/hibernate/ejb/test/lock/LockTest.java 2010-04-26 02:06:03 UTC (rev 19292)
+++ core/branches/Branch_3_5/entitymanager/src/test/java/org/hibernate/ejb/test/lock/LockTest.java 2010-04-26 16:18:45 UTC (rev 19293)
@@ -210,6 +210,28 @@
em.close();
}
+ public void testLockOptimisticForceIncrementDifferentEm() throws Exception {
+ Lock lock = new Lock();
+ lock.setName( "force" );
+ EntityManager em1 = createIsolatedEntityManager();
+ em1.getTransaction().begin();
+ em1.persist( lock );
+ em1.getTransaction().commit();
+ em1.close();
+
+ EntityManager em2 = createIsolatedEntityManager();
+ em2.getTransaction().begin();
+ lock = em2.find( Lock.class, lock.getId(), LockModeType.OPTIMISTIC );
+ assertEquals( "lock mode should be OPTIMISTIC ", LockModeType.OPTIMISTIC, em2.getLockMode(lock) );
+ em2.lock( lock, LockModeType.OPTIMISTIC_FORCE_INCREMENT );
+ assertEquals( "lock mode should be OPTIMISTIC_FORCE_INCREMENT ", LockModeType.OPTIMISTIC_FORCE_INCREMENT, em2.getLockMode(lock) );
+ em2.getTransaction().commit();
+ em2.getTransaction().begin();
+ em2.remove( lock );
+ em2.getTransaction().commit();
+ em2.close();
+ }
+
public void testContendedPessimisticLock() throws Exception {
EntityManager em = getOrCreateEntityManager();
More information about the hibernate-commits
mailing list