RFR 8029891 : Deadlock detected in java/lang/ClassLoader/deadlock/GetResource.java

Mandy Chung mandy.chung at oracle.com
Tue May 12 02:39:41 UTC 2015


> On May 11, 2015, at 4:43 PM, Brent Christian <brent.christian at oracle.com> wrote:
> 
> Hi, Mandy.  Thanks for having a look.
> 
> On 5/11/15 12:09 PM, Mandy Chung wrote:
>> ~/WORK/8029891/plevartI'd like Daniel's suggestion to have the load*
>> method to putAll entries in one go after the input reader/stream/xml
>> file is loaded and parsed rather than adding one entry at a time.
> 
> I also like the idea.
> 
>> Taking another look at this deadlock issue and the compatibility
>> concerns, I wonder if we should keep this change as a special
>> implementation for system properties rather than having this change to
>> java.util.Properties class.  Properties is a Hashtable which specifies
>> the fast-fail behavior (throwing ConcurrentModificationException for
>> concurrent update).  There are other issues specific to system
>> properties we want to clean up (e.g. read-only system property, private
>> system property to JDK but not visible to public etc).
>> 
>> Any thought?
> 
> I like this idea, too. :)
> 
> One thought:
> In the current fix, clone() and serialization make use of package-private methods.  This could present some difficulties if system properties would use its own Properties subclass that would live outside java.util.



It could use the shared secret mechanism sun.misc.SharedSecrets.

Mandy


More information about the core-libs-dev mailing list