You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by al...@apache.org on 2009/03/01 23:15:02 UTC
svn commit: r749135 -
/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java
Author: allee8285
Date: Sun Mar 1 22:15:02 2009
New Revision: 749135
URL: http://svn.apache.org/viewvc?rev=749135&view=rev
Log:
OPENJPA-891 - Fix problematic thread test case synchronization problem.
Modified:
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java
Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java?rev=749135&r1=749134&r2=749135&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/LockManagerTestBase.java Sun Mar 1 22:15:02 2009
@@ -392,6 +392,13 @@
}
}
+ private void notifyParent() {
+ getLog().trace("notifyParent:");
+ synchronized(this) {
+ notify();
+ }
+ }
+
public void concurrentLockingTest(
int id,
int expectedVersionIncrement,
@@ -486,7 +493,10 @@
} else {
t2.start();
}
- Thread.sleep(500);
+ log.trace("wait on thread 1");
+ synchronized (this){
+ wait();
+ }
if (thread2Run == ThreadToRunFirst.RunThread2) {
t1.start();
} else {
@@ -710,7 +720,8 @@
log.trace(beforeWaitMethod + ": duration 1="
+ (System.currentTimeMillis() - startTimeStamp));
log.trace(beforeWaitMethod + ": returns=" + e1);
- log.trace("wait()");
+ notifyParent();
+ log.trace("childWait()");
wait();
switch (beforeWaitMethod) {
case NoOp: