[Fwd: Second Code Review for WeakReference leak in the Logging API (6942989)]
Andrew John Hughes
ahughes at redhat.com
Thu Jun 24 08:36:18 PDT 2010
On 24 June 2010 02:03, Joe Darcy <joe.darcy at oracle.com> wrote:
> Hi Dan.
>
> Yes, that would be a fine fix for OpenJDK 6; approved to be pushed! The
> current build number is b21.
>
I thought we were supposed to allow fixes to soak in OpenJDK7 first?
> Thanks,
>
> -Joe
>
> Daniel D. Daugherty wrote:
>>
>> Joe,
>>
>> I think you might want this one for OpenJDK6. That will allow Google
>> to sync their fix with mine.
>>
>> Only two changes were made after the second round of code review:
>>
>> *** LogManager.java Fri Jun 18 09:51:33 2010
>> ---
>> /work/shared/bug_hunt/jdk7/exp/src/share/classes/java/util/logging/LogManager.java
>> Wed Jun 23 11:29:49 2010
>> ***************
>> *** 423,430 ****
>> // that have been GC'ed.
>> private final ReferenceQueue<Logger> loggerRefQueue
>> = new ReferenceQueue<Logger>();
>> ! ! // Package-level method.
>> // Helper class for managing WeakReferences to Logger objects.
>> //
>> // LogManager.namedLoggers
>> --- 423,430 ----
>> // that have been GC'ed.
>> private final ReferenceQueue<Logger> loggerRefQueue
>> = new ReferenceQueue<Logger>();
>> !
>> ! // Package-level inner class.
>> // Helper class for managing WeakReferences to Logger objects.
>> //
>> // LogManager.namedLoggers
>> ***************
>> *** 454,460 ****
>>
>> name = logger.getName(); // save for namedLoggers cleanup
>> }
>> ! // dispose of this LoggerWeakRef object
>> void dispose() {
>> if (node != null) {
>> --- 454,460 ----
>>
>> name = logger.getName(); // save for namedLoggers cleanup
>> }
>> !
>> // dispose of this LoggerWeakRef object
>> void dispose() {
>> if (node != null) {
>>
>> jcheck caught trailing whitespace and one comment correction caught
>> by Tony P.
>>
>> Let me know if you want this fix...
>>
>> Dan
>>
>>
>> -------- Original Message --------
>> Subject: Second Code Review for WeakReference leak in the Logging API
>> (6942989)
>> Date: Fri, 18 Jun 2010 13:25:55 -0600
>> From: Daniel D. Daugherty <daniel.daugherty at oracle.com>
>> Reply-To: daniel.daugherty at oracle.com
>> To: serviceability-dev at openjdk.java.net
>> <serviceability-dev at openjdk.java.net>, hotspot-runtime-dev at openjdk.java.net
>>
>>
>>
>> Greetings,
>>
>> I have a new version of my fix for the WeakReference leak in the
>> Logging API done. This version uses ReferenceQueues; thanks to Eamonn
>> McManus, Jeremy Manson and Tony Printezis for their insights on using
>> ReferenceQueues. Here's a pointer to Tony's paper for background info:
>>
>> http://java.sun.com/developer/technicalArticles/javase/finalization/
>>
>> This version also has limits on the number of dead Loggers that are
>> cleaned up per call; thanks to Alan Bateman for politely pushing me in
>> that direction.
>>
>> The webrev is again relative to OpenJDK7, but the bug is escalated so
>> the fix will be backported to the JDK6-Update train. So again, I'll
>> need a minimum of two code reviewers.
>>
>> Here is the URL for the webrev:
>>
>> http://cr.openjdk.java.net/~dcubed/6942989-webrev/1/
>>
>> Thanks, in advance, for any reviews.
>>
>> Dan
>>
>>
>>
>
>
--
Andrew :-)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the jdk6-dev
mailing list