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

Amichai Rothman updated DOSGI-169:
----------------------------------

    Attachment: fix_exportedservices_sync.diff

Here is a fix that does the data structure manipulation inside a sync block, 
adding all relevant ExportRegistrations to a list, and then closes them outside 
of the sync block.
                
> RemoteServiceAdminCore missing synchronized block
> -------------------------------------------------
>
>                 Key: DOSGI-169
>                 URL: https://issues.apache.org/jira/browse/DOSGI-169
>             Project: CXF Distributed OSGi
>          Issue Type: Bug
>          Components: DSW
>    Affects Versions: 1.4.0, 1.5
>            Reporter: Amichai Rothman
>         Attachments: fix_exportedservices_sync.diff
>
>
> In RemoteServiceAdminCore.removeExportRegistrations() the exportedServices 
> map is used in a HashMap copy constructor without being synchronized (this is 
> easily visually mistaken for a single atomic operation, but is actually an 
> iteration on the map - an in any case, should be synchronized for proper 
> visibility). The copy constructor call should be placed in a syncrhonized 
> block with exportedServices as the monitor, just like all other accesses to 
> this map.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to