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
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.