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

ASF subversion and git services commented on KARAF-5314:
--------------------------------------------------------

Commit 4e8393552a2724ea0f416a055026f0ae9704ad50 in karaf's branch 
refs/heads/karaf-4.1.x from Vinay Shankar (e24113)
[ https://git-wip-us.apache.org/repos/asf?p=karaf.git;h=4e83935 ]

KARAF-5314 Added a features cache that increases the performance of the 
filtering of the required features from the available features.

The performance of the filtering logic decresed when the java streams API was 
used in 4.1 compared to for loops in 4.0. I reverted the filtering logic to use 
for loops and also introduced a features cache. This increased the performance 
by a huge margin, almost 20X faster when there are ~900 available features and 
~300 required features from a highly complex and huge feature dependency tree.


> The performance of profile builder used by karaf maven plugin has reduced 
> significantly in 4.1 compared to 4.0
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: KARAF-5314
>                 URL: https://issues.apache.org/jira/browse/KARAF-5314
>             Project: Karaf
>          Issue Type: Bug
>            Reporter: Vinay Shankar
>             Fix For: 4.2.0
>
>
> The performance of profile builder used by karaf maven plugin has reduced 
> significantly in 4.1 compared to 4.0. 
> The java streams API is being used in 4.1 to filter our the required features 
> from the set of all features present in the repositories that are part of the 
> profile. This is done in the "addFeatures" method in the "Builder.java" class 
> in the "org.apache.karaf.profile.core" bundle. This change (from 4.0) has 
> drastically reduced the performance. For a profile with ~900 features in all 
> the repositories in the profile and ~300 required features from a highly 
> complex feature dependency tree, this function is taking around 13min to 
> complete. The same execution took around 3-5min in 4.0 (where simple for 
> loops were being used). 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to