You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Benjamin Graf (JIRA)" <ji...@apache.org> on 2016/06/18 17:29:05 UTC

[jira] [Comment Edited] (KARAF-4578) Fileinstaller does not install bundle to root region

    [ https://issues.apache.org/jira/browse/KARAF-4578?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15338060#comment-15338060 ] 

Benjamin Graf edited comment on KARAF-4578 at 6/18/16 5:28 PM:
---------------------------------------------------------------

I do deploy a simple bundle with a little blueprint namespace handler via file installer. The blueprint dependency is resolved via feature (standard SMX 7.0m2 installation). The namespace handler bundle does not get resolved because of missing requirement osgi.wiring.package; (&(osgi.wiring.package=org.apache.aries.blueprint)(version>=1.5.0)(!(version>=2.0.0))). I did some debugging and recognized that the bundle is not installed in the root region and therefor does not see the resolved blueprint core bundle. Further investigation shows that org.apache.karaf.features.core does its activation in a separate thread (karaf-util BaseActivator class architecture). Therefor the feature deploy process and the file installer process are working parallel since the framework start-level goes immediately to 100. I think that there is no synchronization while installing the eclipse region hook which puts the already installed bundles into root region. If I stop (debug breakpoint) the activation of org.apache.karaf.features.core and let it run after all bundles have been installed by file installer everything is fine. That's why I think its a multi-thread race condition.


was (Author: graben):
I do deploy a simple bundle with a little blueprint namespace handler. The blueprint dependency is resolved via feature (standard SMX 7.0m2 installation). The namespace handler bundle does not get resolved because of missing requirement osgi.wiring.package; (&(osgi.wiring.package=org.apache.aries.blueprint)(version>=1.5.0)(!(version>=2.0.0))). I did some debugging and recognized that the bundle is not installed in the root region and therefor does not see the resolved blueprint core bundle. Further investigation shows that org.apache.karaf.features.core does its activation in a separate thread (karaf-util BaseActivator class architecture). Therefor the feature deploy process and the file installer process are working parallel since the framework start-level goes immediately to 100. I think that there is no synchronization while installing the eclipse region hook which puts the already installed bundles into root region. If I stop (debug breakpoint) the activation of org.apache.karaf.features.core and let it run after all bundles have been installed by file installer everything is fine. That's why I think its a multi-thread race condition.

> Fileinstaller does not install bundle to root region
> ----------------------------------------------------
>
>                 Key: KARAF-4578
>                 URL: https://issues.apache.org/jira/browse/KARAF-4578
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-core, karaf-feature
>    Affects Versions: 4.0.5
>            Reporter: Benjamin Graf
>            Assignee: Jean-Baptiste Onofré
>            Priority: Critical
>
> The file installer is starting to work in parallel to the activation of org.apache.karaf.features.core which does the region hook initialization. This causes that bundles are installed to no region causing them not to get sucessfully resolved. Might also be the cause of KARAF-4498.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)