[PATCH] Review Request - Test bug: 6948101 java/rmi/transport/pinLastArguments/PinLastArguments.java failing intermittently
Eric Wang
yiming.wang at oracle.com
Wed Jun 27 06:57:22 UTC 2012
Hi David & Stuart,
Thank you for the help! please review the in webrev 6948101.zip in
attachment.
Regards,
Eric
On 2012/6/27 9:14, Stuart Marks wrote:
> Hi Eric,
>
> Alan Bateman asked me to help you out with this since he's going to be
> unavailable for a couple weeks.
>
> I didn't see you on the OpenJDK census [1] so you might not have an
> Author role and thus the ability to post webrevs. If indeed you don't,
> I can post a webrev for you. I can also post a webrev for your other
> review (7123972) if it's still necessary.
>
> Finally, I can push the fixes for you when the reviews are complete.
>
> s'marks
>
> [1] http://openjdk.java.net/census
>
> On 6/26/12 2:56 PM, David Holmes wrote:
>> Hi Eric,
>>
>> On 26/06/2012 7:26 PM, Eric Wang wrote:
>>> 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.
>>
>> Again I really need to see a webrev to see the fix in context. Do you
>> have
>> Author role and an OpenJDK user name so you can post webrevs on
>> cr.openjdk.java.net?
>>
>> I suspect this may have the same issues as the other fix and require
>> a timeout
>> for when the original problem is still present.
>>
>> Thanks,
>> David
>>
>>> 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