Bugzilla – Bug 3250
rare ConcurrentModificationException during subscription
Last modified: 2005-05-09 01:31:29
You need to log in before you can comment on or make changes to this bug.
Failed to store resource; nested exception is: java.util.ConcurrentModificationException java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:440) at java.util.AbstractList$Itr.next(AbstractList.java:413) at org.globus.wsrf.utils.SubscriptionPersistenceUtils.addSubscriptionListenersToTab le(SubscriptionPersistenceUtils.java:94) at org.globus.wsrf.utils.SubscriptionPersistenceUtils.getListenerToTopicsTable (SubscriptionPersistenceUtils.java:71) at org.globus.wsrf.utils.SubscriptionPersistenceUtils.storeSubscriptionListeners (SubscriptionPersistenceUtils.java:45) at org.globus.wsrf.impl.notification.NotificationTestResource.store (NotificationTestResource.java:189) at org.globus.wsrf.impl.notification.SubscribeHelper.subscribe (SubscribeHelper.java:426) at org.globus.wsrf.impl.notification.SubscribeProvider.subscribe (SubscribeProvider.java:97) at org.apache.axis.providers.java.RPCProvider.invokeMethod (RPCProvider.java:384)
Created an attachment (id=600) [details] Full stack trace
Hmm, looks like the stuff in persistent subscription utils is not sufficiently synchronized wrt both adding new topics and adding/removing subscription listeners. I will take a look at this. /Sam
I committed a fix (hopefully) that should take care of Topic listener concurency issues. However, there still might be an issue with concurency of adding/removing/iterating over Topics. I don't think we have real tests for it.
Since the ConcurrentModificationException fix appears to be working, I'm closing the bug. The Topic concurrency issues can be tracked in another bug.