[PATCH] Review Request - Test bug: 6948101 java/rmi/transport/pinLastArguments/PinLastArguments.java failing intermittently
Eric Wang
yiming.wang at oracle.com
Tue Jun 26 09:26:15 UTC 2012
Hi All,
Please help to review the fix attached for test bug 6948101
<http://monaco.us.oracle.com/detail.jsf?cr=6948101> which is same root
cause as bug 7123972 <http://monaco.us.oracle.com/detail.jsf?cr=7123972>.
The test makes wrong assumption that GC is started immediately to
recycle unused objects after System.gc() called.
The proposed fix is to make sure objects have been recycled by GC before
checking if the weak reference is null.
Regards,
Eric
-------------- next part --------------
--- old/test/ProblemList.txt 2012-06-26 17:02:12.934138771 +0800
+++ new/test/ProblemList.txt 2012-06-26 17:02:11.494051649 +0800
@@ -271,9 +271,6 @@
# 7140992
java/rmi/server/Unreferenced/finiteGCLatency/FiniteGCLatency.java generic-all
-# 6948101
-java/rmi/transport/pinLastArguments/PinLastArguments.java generic-all
-
# 7146541
java/rmi/transport/rapidExportUnexport/RapidExportUnexport.java linux-all
-------------- next part --------------
--- old/test/java/rmi/transport/pinLastArguments/PinLastArguments.java 2012-06-26 17:02:17.432074905 +0800
+++ new/test/java/rmi/transport/pinLastArguments/PinLastArguments.java 2012-06-26 17:02:15.984073307 +0800
@@ -43,7 +43,8 @@
import java.rmi.server.UnicastRemoteObject;
public class PinLastArguments {
-
+ private static volatile boolean finalized = false;
+
public interface Ping extends Remote {
void ping(Object first, Object second) throws RemoteException;
}
@@ -53,6 +54,9 @@
public void ping(Object first, Object second) {
System.err.println("ping invoked: " + first + ", " + second);
}
+ protected void finalize() {
+ finalized = true;
+ }
}
public static void main(String[] args) throws Exception {
@@ -78,7 +82,11 @@
}
impl = null;
- System.gc();
+ while(!finalized) {
+ System.gc();
+ System.runFinalization();
+ Thread.sleep(20);
+ }
if (ref.get() != null) {
throw new Error("TEST FAILED: impl not garbage collected");
More information about the core-libs-dev
mailing list