many bundles with the same propeties file : infinite loop

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

many bundles with the same propeties file : infinite loop

Mohamed AFIF

Hello,.

I'm working on osgi project using karaf/blueprint , and I had a random behaviour when starting karaf: some bundles Swing between Active and Starting state, but finally  I found out the root cause, 
indeed those bundles  share the same cm:property-placeholder (set in blueprint config file) with the same persistent-id, and as every property file is associated to only one   ManagerService , when another bundle sharing  same file starts, it goes around in circles.
I would like to know if there is a workaroud to do that, it means for a given maven project having Many modules, if it is possible  to share the same cfg file between some modules.

Many thanks.

Mohamed.
Reply | Threaded
Open this post in threaded view
|

Re: many bundles with the same propeties file : infinite loop

David Jencks-3
Imnsho blueprint should not set the bundle location on configurations. In SCR setting the bundle location results in an unavoidable race condition and I’d be slightly surprised if blueprint escaped that problem. Setting the bundle location automatically is thought to be a bad idea in general now. 
Since you are trying to use the existing blueprint implementation, the best thing would be to set the bundle location to the multi-location “?”. I don’t know if karaf provides a way to do that or indeed if blueprint recognizes multi-locations; there’s no spec for blueprints relationship to config admin, but since multi-locations have been around for years I hope blueprint has been updated to recognize them.
David Jencks 

Sent from my iPhone

On Oct 8, 2018, at 2:55 PM, Mohamed AFIF <[hidden email]> wrote:


Hello,.

I'm working on osgi project using karaf/blueprint , and I had a random behaviour when starting karaf: some bundles Swing between Active and Starting state, but finally  I found out the root cause, 
indeed those bundles  share the same cm:property-placeholder (set in blueprint config file) with the same persistent-id, and as every property file is associated to only one   ManagerService , when another bundle sharing  same file starts, it goes around in circles.
I would like to know if there is a workaroud to do that, it means for a given maven project having Many modules, if it is possible  to share the same cfg file between some modules.

Many thanks.

Mohamed.
Reply | Threaded
Open this post in threaded view
|

Re: many bundles with the same propeties file : infinite loop

Mohamed AFIF

Hi David,

Thank you for taking time to answer me.
In fact we don't use SCR module in our karaf, and it is felx-config admin which manages configuration creation and thus location bundles.  indeed in the configuration manager it process the case when location bundle starts with "?", but I still don't know how can I set the muli-location on my bundles.

Regards.

Mohamed


Le mar. 9 oct. 2018 à 01:42, David Jencks <[hidden email]> a écrit :
Imnsho blueprint should not set the bundle location on configurations. In SCR setting the bundle location results in an unavoidable race condition and I’d be slightly surprised if blueprint escaped that problem. Setting the bundle location automatically is thought to be a bad idea in general now. 
Since you are trying to use the existing blueprint implementation, the best thing would be to set the bundle location to the multi-location “?”. I don’t know if karaf provides a way to do that or indeed if blueprint recognizes multi-locations; there’s no spec for blueprints relationship to config admin, but since multi-locations have been around for years I hope blueprint has been updated to recognize them.
David Jencks 

Sent from my iPhone

On Oct 8, 2018, at 2:55 PM, Mohamed AFIF <[hidden email]> wrote:


Hello,.

I'm working on osgi project using karaf/blueprint , and I had a random behaviour when starting karaf: some bundles Swing between Active and Starting state, but finally  I found out the root cause, 
indeed those bundles  share the same cm:property-placeholder (set in blueprint config file) with the same persistent-id, and as every property file is associated to only one   ManagerService , when another bundle sharing  same file starts, it goes around in circles.
I would like to know if there is a workaroud to do that, it means for a given maven project having Many modules, if it is possible  to share the same cfg file between some modules.

Many thanks.

Mohamed.


--
 
Cdt
Mohamed AFIF