Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 464084 - Update the felix resolver implementation to the latest
Summary: Update the felix resolver implementation to the latest
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Framework (show other bugs)
Version: 4.5.0 Mars   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: Mars M7   Edit
Assignee: Thomas Watson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-07 16:30 EDT by Thomas Watson CLA
Modified: 2015-04-17 17:02 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Watson CLA 2015-04-07 16:30:07 EDT
There have been a number of performance improvements to the felix resolver that we need to pick up in the Neon release.

https://issues.apache.org/jira/browse/FELIX-4656

It is too late in the Mars release to consider picking this up.
Comment 1 Thomas Watson CLA 2015-04-07 16:32:25 EDT
See bug 460393 for a scenario that exercises the performance of the resolver.
Comment 2 Thomas Watson CLA 2015-04-15 16:56:36 EDT
(In reply to Thomas Watson from comment #0)
> There have been a number of performance improvements to the felix resolver
> that we need to pick up in the Neon release.
> 
> https://issues.apache.org/jira/browse/FELIX-4656
> 
> It is too late in the Mars release to consider picking this up.

I've done much more review on the changes to the felix resolver.  I think it would be best to attempt to get this in now for Mars M7.  I have some suggested superficial changes to the code to make it more understandable.  For now I am releasing the current version of the code fix.
Comment 3 Thomas Watson CLA 2015-04-15 17:16:49 EDT
Latest released with:

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=1a8689effb7e188e7a8fc2af1c1df95c5afb55b8

Leaving bug open for the additional changes I suggested in the felix bug.
Comment 4 GianMaria Romanato CLA 2015-04-16 06:09:35 EDT
Hello Thomas,

I am the same person that commented yesterday on the Felix-4656 issue and who had to patch WebSphere Liberty to be able to start a large application.

You linked bug #460393 and, if I understood correctly, a possible work-around for that problem is to set

 equinox.resolver.revision.batch.size=1

I'd like to understand if in your opinion that configuration property may also resolve the issue I am experiencing with WebSphere Liberty as I would prefer to specify a custom property as an interim fix rather than having to patch a JAR in the server installation folder.
Comment 5 Thomas Watson CLA 2015-04-16 08:57:22 EDT
(In reply to GianMaria Romanato from comment #4)
> Hello Thomas,
> 
> I am the same person that commented yesterday on the Felix-4656 issue and
> who had to patch WebSphere Liberty to be able to start a large application.
> 
> You linked bug #460393 and, if I understood correctly, a possible
> work-around for that problem is to set
> 
>  equinox.resolver.revision.batch.size=1
> 
> I'd like to understand if in your opinion that configuration property may
> also resolve the issue I am experiencing with WebSphere Liberty as I would
> prefer to specify a custom property as an interim fix rather than having to
> patch a JAR in the server installation folder.

I doubt that property will help fix your issue.  I suspect your issue is in the usage of the Resolver service implementation by Aries subsystems when resolving a Subsystem at install time.  The equinox.resolver.revision.batch.size property controls the batch size for bundle resolution at the framework runtime level.  This configuration property only got introduced in Mars to allow configurations to increase the batch size if they wanted to.  In Luna (the version currently used by liberty) the batch size is hard coded to 1 already.

So unfortunately this configuration will not help you for subsystem resolution.
Comment 6 GianMaria Romanato CLA 2015-04-16 11:48:51 EDT
Thank you very much for your answer, this probably saved me half a day of useless testing.
Comment 7 Thomas Watson CLA 2015-04-17 17:02:02 EDT
Updated with the latest after applying my patch from the felix bug to use the term delta:

https://issues.apache.org/jira/browse/FELIX-4656

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=f12173bac6175be732dfe42dc8ffb45ccbf68652