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

Christian Schneider commented on KARAF-5314:
--------------------------------------------

In this part of the code we are only going through the features and their 
feature dependencies. So we are traversing at max 900 features and recurse 
through their dependencies. With the caching on feature name we only need to 
traverse the different versions of a feature. So I think this should be way 
below the level where parallel execution would help. 

After my extraction of the FeatureSelector class it should be quite easy to do 
unit tests on the performance. So I will setup some test cases. Then we can 
easily try the performance impact of changes.


> 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.1.3
>
>
> 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