You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "pfreeberm@gmail.com (JIRA)" <ji...@apache.org> on 2009/08/20 20:19:14 UTC

[jira] Commented: (CXF-2156) dOSGi startup blocks in some cases when other bundles already wait for remote services

    [ https://issues.apache.org/jira/browse/CXF-2156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12745539#action_12745539 ] 

pfreeberm@gmail.com commented on CXF-2156:
------------------------------------------

Hi -

I am currently involved in the dev of an OSGI app using cxf.  We are experiencing an issue where the cxf-dosgi-ri-dsw-cxf_1.1.0.SNAPSHOT bundle hangs in a starting state.  Does this coincide with what you are describing in this issue?  We have one service tracker that is calling underlying services registered by ds.

Thanks,
Paul
 

Quoted from: 
http://www.nabble.com/-jira--Created%3A-%28CXF-2156%29-dOSGi-startup-blocks-in-some-cases-when-other-bundles-already-wait-for-remote-services-tp22904917p22904917.html



> dOSGi startup blocks in some cases when other bundles already wait for remote services
> --------------------------------------------------------------------------------------
>
>                 Key: CXF-2156
>                 URL: https://issues.apache.org/jira/browse/CXF-2156
>             Project: CXF
>          Issue Type: Bug
>          Components: Distributed-OSGi
>            Reporter: Marc Schaaf
>            Priority: Minor
>         Attachments: Activator_ListenerHook_Bug.patch
>
>
> When the distributed OSGi bundle is deployed in an OSGi container where already one or more bundles are waiting for remote services, the start-up blocks until the remote calls of the other bundles are finished if the other bundles does these calls inside the callback method of the ServiceTracker. 
> This happens because the registration of the service hook by the distributed OSGi bundle blocks in the mentioned case. 
> It looks like the hook is instantly informed about already existing service listeners. The hook than registers the the proxy services which causes the execution of the service listeners of the other bundles. The other bundles than make their remote calls from within the addingService method of the ServiceTracker. All of this seems to happen in the start-up Thread which causes the start-up of the distributed OSGi bundle to block until the remote calls are finished. 
> Placing the registration of the hook in a different thread seems to solve the issue. 

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