[
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