<core-libs-dev> sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario
youdwei at linux.vnet.ibm.com
Sun Apr 22 22:54:19 PDT 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
> 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!
Is there any suggestion from the mailing list?
More information about the serviceability-dev