On 24/12/2012 14:08, shanliang wrote:
webrev: http://cr.openjdk.java.net/~sjiang/JDK-7120365/webrev.00/

The test is correct, it was implemented to verify the fix for bug 4911721, but in addition it detects luckily another problem within the method ServerNotifForwarder.snoopOnUnregister

The problem was that during a "for" cycle, the set list was modified by anther thread, the solution is to use a unmodifiable set.

This fix is important, it not only re-enables a test, but also fixes a concurrent modification bug in the jmx notification.

Shanliang
Are you sure this is right? I don't know this code but from a brief glance then it appears to me that all access to listenerMap requires first synchronizes on it and maybe you need to do this and then take a copy (not a unmodifiable view) of the delegate set before you iterate over it. Apologies if you looked at this in detail, it's just not clear to me how using an unmodifiable view fixes the problem if the issue is actually that other threads are modifying the set.

-Alan

Reply via email to