<core-libs-dev> sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario
Deven You
youdwei at linux.vnet.ibm.com
Mon Apr 23 05:54:19 UTC 2012
On 04/18/2012 02:20 PM, Deven You wrote:
> On 04/18/2012 01:34 PM, Mandy Chung wrote:
>>
>>
>> On 4/17/2012 12:33 AM, Deven You wrote:
>>>> I think this could still run into CME. System Properties is not a
>>>> synchronized map and the setter methods (System.setProperty or
>>>> Properties.put method) doesn't synchronize on the Properties object.
>>>>
>>> Hi Mandy,
>>>
>>> I didn't catch you. Do you mean there are other setter methods of
>>> System properties in the Agent.java which are not synchronized?
>>
>> The setter methods I'm referring to are System.setProperty and
>> System.getProperties().put().
>>
>> Mandy
>>
> Hi Mandy,
>
> I have gone through the Agent.java, I think other set/put methods
> related to properties are protected properly.
>
> public static void agentmain using parseString(args) which return
> a properties which is a local var and is not possible to cause
> concurrent problem when call config_props.putAll(arg_props).
>
> private static synchronized void startLocalManagementAgent() is
> synchronized already.
>
> private static synchronized void startRemoteManagementAgent(String
> args) is synchronized also.
>
> Could you point where the CME may ocurr?
>
> Thanks a lot!
>
>
Hi All,
Is there any suggestion from the mailing list?
--
Best Regards,
Deven
More information about the core-libs-dev
mailing list