You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Ramkumar Ramalingam (JIRA)" <tu...@ws.apache.org> on 2008/04/14 11:51:04 UTC

[jira] Reopened: (TUSCANY-2092) ConcurrentModificationException in ExtensibleContributionListener

     [ https://issues.apache.org/jira/browse/TUSCANY-2092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ramkumar Ramalingam reopened TUSCANY-2092:
------------------------------------------

      Assignee: Ramkumar Ramalingam  (was: ant elder)

As per the recommendation made by Simon Laws in the mailing list (http://mail-archives.apache.org/mod_mbox/ws-tuscany-dev/200804.mbox/%3cc0c051b50804100449wa07f6fbrf555923db941ad0@mail.gmail.com%3e), we need a fix to synchronize the access to loadListeners() method. I'll attach a patch for the same.

> ConcurrentModificationException in ExtensibleContributionListener
> -----------------------------------------------------------------
>
>                 Key: TUSCANY-2092
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-2092
>             Project: Tuscany
>          Issue Type: Bug
>            Reporter: Greg Dritschler
>            Assignee: Ramkumar Ramalingam
>             Fix For: Java-SCA-Next
>
>         Attachments: JIRA-2092.patch
>
>
> java.util.ConcurrentModificationException
> 	at java.util.AbstractList$SimpleListIterator.next(Unknown Source)
> 	at org.apache.tuscany.sca.contribution.service.ExtensibleContributionListener.contributionAdded(ExtensibleContributionListener.java:40)
> 	at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:389)
> 	at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute(ContributionServiceImpl.java:202)
> The problem occurs if two threads try to add a contribution simultaneously.
> DefaultContributionListenerExtensionPoint does not synchronize the list of listeners.  In particular loadListeners does not prevent multiple threads from trying to load the list of listeners.  One thread completes first while the other is still loading.  This leads to the exception shown above when a thread tries to iterate the listener list.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org