[Framework] Optimize resolver algorithm by not re-calculating uses constraints
for resolved modules
---------------------------------------------------------------------------------------------------
Key: FELIX-2737
URL: https://issues.apache.org/jira/browse/FELIX-2737
Project: Felix
Issue Type: Improvement
Components: Framework
Affects Versions: framework-3.0.6
Reporter: Richard S. Hall
Fix For: framework-3.2.0
To determine package space consistency, the resolver algorithm must calculate
the package space of each module involved in the resolve operation. Since the
resolver algorithm is stateless, it ends up re-calculating package spaces of
resolved modules again and again. One of the more time consuming aspects of
package space calculation is determining "uses" constraints, since they are
transitive. The current algorithm re-calculates "uses" constraints for both
resolved and resolving bundles. However, the "uses" constraints are only
necessary for determining if a resolving bundle's package space is consistent;
a resolved bundle's package space is consistent by definition (unless it is
performing a dynamic import). Therefore, the resolver could be optimized by
only calculating the "uses" constraints of resolving (and dynamically
importing) bundles and not doing so for resolved bundles.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.