[ 
https://issues.apache.org/jira/browse/ARIES-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Ross resolved ARIES-1388.
------------------------------
    Resolution: Fixed

http://svn.apache.org/r1698360

> Compute requirement filters only once.
> --------------------------------------
>
>                 Key: ARIES-1388
>                 URL: https://issues.apache.org/jira/browse/ARIES-1388
>             Project: Aries
>          Issue Type: Improvement
>          Components: Subsystem
>    Affects Versions: subsystem-2.0.2
>            Reporter: John Ross
>            Assignee: John Ross
>              Labels: performance
>
> ResourceHelper.matches(Requirement, Capability) is an often used method 
> during resolution. Currently, it recomputes the requirement filter with each 
> call.
> The measurements used the same test scenario being developed as part of 
> ARIES-1357. The time it took to install 50 features was measured. Each 
> feature consists of 10 bundles plus one application. All features share the 
> same 10 bundles. Each bundle exports 5 unique packages. Each application 
> consists of 10 unique bundles. The bundles import packages offered by the 
> containing feature.
> The baseline average time for installing all 50 features was 67.9 seconds.
> AbstractRequirement will now lazily compute the requirement filter when asked 
> for the first time. Subsequent calls will return the already computed value.
> ResourceHelper now asks whether or not the Requirement is an instance of 
> AbstractRequirement. If so, it asks for the filter directly. If not, the 
> filter is computed as before.
> After these modifications, the average time for installing all 50 features 
> was 46.6 seconds, a 31.3% improvement.



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

Reply via email to