2016-08-26 14:59 GMT+02:00 Guillaume Nodet <[email protected]>:

> The installation order is not really relevent, what is important is the
> startup order.
> Once the list of bundles has been computed, the features service does the
> following:
>    #1: stop bundles that needs to be updated or uninstalled in order
>    #2: uninstall needed bundles
>    #3: update regions
>    #4: update bundles
>    #5: install bundles
>    #6: save state
>    #7: install configuration
>    #8: refresh bundles
>    #9: start bundles in order
>    #10: send events
>
> For point #9, bundles are split in multiple sets according to their their
> order
>

I meant they are split according to their start level, each set containing
bundles that have the same start level.


> , and in each set, they are sorted in a way that will try to ensure the
> bundles are correctly and fully resolved (see FELIX-2949, because Felix
> resolver is not greedy).
>

Note that the resolver is guided so that it will apply the resolution that
has been previously computed by the feature service.


>
> What's the problem you're trying to solve exactly ?
>
> 2016-08-26 13:56 GMT+02:00 James Carman <[email protected]>:
>
>> Wonderful. Something needs to be done about that, then.
>>
>> On Fri, Aug 26, 2016 at 7:55 AM Guillaume Nodet <[email protected]>
>> wrote:
>>
>>> No, that's true for 2.x and 3.x.
>>> 4.x converts the feature list to a list of requirements, builds
>>> resources, launch the OSGi resolver, check the current state and apply the
>>> difference.
>>>
>>>
>>> 2016-08-26 13:52 GMT+02:00 James Carman <[email protected]>:
>>>
>>>> It iterates through what you hand it, doesn't it?
>>>>
>>>> On Fri, Aug 26, 2016 at 7:50 AM Guillaume Nodet <[email protected]>
>>>> wrote:
>>>>
>>>>> Yeah, BootFeaturesInstaller keeps the order and pass a LinkedHashSet
>>>>> to the FeaturesServiceImpl, but that one does not care about the order by
>>>>> design.
>>>>>
>>>>>
>>>>> 2016-08-26 13:46 GMT+02:00 James Carman <[email protected]>:
>>>>>
>>>>>> We change the code to use a list ordered set, so the order is
>>>>>> preserved. It has been applied to all branches
>>>>>>
>>>>>> On Fri, Aug 26, 2016 at 7:45 AM Guillaume Nodet <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> Afaik karaf-4642 only really applies to 3.x unless you use stages
>>>>>>> with one feature per stage.
>>>>>>> Features in a single stage are installed all at once, so the order
>>>>>>> is lost.
>>>>>>> A simple proof is to look at the list of bundles installed with a
>>>>>>> bare karaf 4.x install : the order of the installed bundles is 
>>>>>>> unrelated to
>>>>>>> the order of the features listed in the configuration, that's because a
>>>>>>> single stage is used.
>>>>>>>
>>>>>>> 2016-08-26 13:14 GMT+02:00 James Carman <[email protected]>
>>>>>>> :
>>>>>>>
>>>>>>>> That's not entirely true. The featuresBoot ordering has been fixed
>>>>>>>> by
>>>>>>>> karaf-4642.
>>>>>>>>
>>>>>>>> On Fri, Aug 26, 2016 at 3:42 AM Guillaume Nodet <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> The only way to influence the start order of bundles is to specify
>>>>>>>>> the start level on the feature or on the feature's bundles using the
>>>>>>>>> start-level attribute (see https://github.com/apache/kara
>>>>>>>>> f/blob/karaf-4.0.x/assemblies/features/standard/src/main/
>>>>>>>>> feature/feature.xml for some examples).
>>>>>>>>>
>>>>>>>>> In Karaf 4.x, the features are resolved and installed in a single
>>>>>>>>> pass, so the order is lost.
>>>>>>>>>
>>>>>>>>> 2016-08-26 4:58 GMT+02:00 oski_bear <[email protected]>:
>>>>>>>>>
>>>>>>>>>> Hello, I'm a long-time user of Karaf 2.4.0 trying to migrate my
>>>>>>>>>> application
>>>>>>>>>> to Karaf 4.0.5. One thing I've noticed is that in this new
>>>>>>>>>> version of Karaf
>>>>>>>>>> there doesn't seem to be any way to specify the order in which
>>>>>>>>>> bundles are
>>>>>>>>>> ordered.
>>>>>>>>>>
>>>>>>>>>> For example, if I specify "bootFeatures" in the
>>>>>>>>>> karaf-maven-plugin they
>>>>>>>>>> don't start in the order that I list them. Additionally, when I
>>>>>>>>>> create my
>>>>>>>>>> own features they don't load in the order they are written and
>>>>>>>>>> the container
>>>>>>>>>> does not seem to respect the start levels.
>>>>>>>>>>
>>>>>>>>>> Am I missing something here? Is there a way to enforce a certain
>>>>>>>>>> order in
>>>>>>>>>> the boot features with the karaf-maven-plugin? Is there a way to
>>>>>>>>>> force an
>>>>>>>>>> order when defining a feature?
>>>>>>>>>>
>>>>>>>>>> Please help me understand.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> View this message in context: http://karaf.922171.n3.nabble.
>>>>>>>>>> com/Karaf-4-0-5-bundle-startup-order-tp4047689.html
>>>>>>>>>> Sent from the Karaf - User mailing list archive at Nabble.com.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> ------------------------
>>>>>>>>> Guillaume Nodet
>>>>>>>>> ------------------------
>>>>>>>>> Red Hat, Open Source Integration
>>>>>>>>>
>>>>>>>>> Email: [email protected]
>>>>>>>>> Web: http://fusesource.com
>>>>>>>>> Blog: http://gnodet.blogspot.com/
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> ------------------------
>>>>>>> Guillaume Nodet
>>>>>>> ------------------------
>>>>>>> Red Hat, Open Source Integration
>>>>>>>
>>>>>>> Email: [email protected]
>>>>>>> Web: http://fusesource.com
>>>>>>> Blog: http://gnodet.blogspot.com/
>>>>>>>
>>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ------------------------
>>>>> Guillaume Nodet
>>>>> ------------------------
>>>>> Red Hat, Open Source Integration
>>>>>
>>>>> Email: [email protected]
>>>>> Web: http://fusesource.com
>>>>> Blog: http://gnodet.blogspot.com/
>>>>>
>>>>>
>>>
>>>
>>> --
>>> ------------------------
>>> Guillaume Nodet
>>> ------------------------
>>> Red Hat, Open Source Integration
>>>
>>> Email: [email protected]
>>> Web: http://fusesource.com
>>> Blog: http://gnodet.blogspot.com/
>>>
>>>
>
>
> --
> ------------------------
> Guillaume Nodet
> ------------------------
> Red Hat, Open Source Integration
>
> Email: [email protected]
> Web: http://fusesource.com
> Blog: http://gnodet.blogspot.com/
>
>


-- 
------------------------
Guillaume Nodet
------------------------
Red Hat, Open Source Integration

Email: [email protected]
Web: http://fusesource.com
Blog: http://gnodet.blogspot.com/

Reply via email to