[ https://issues.apache.org/jira/browse/ARIES-1359?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14710393#comment-14710393 ]
John Ross commented on ARIES-1359: ---------------------------------- Applications and their constituents must be examined for matching capabilities. Although applications do not export anything, child subsystems are allowed to grab anything they want from a parent. The root subsystem must also be examined because bundle capabilities in the root region are fair game. This is an optimization for a very specific case, namely one when there are many features with shared bundles. Nevertheless, I can see why it is effective, and it would not appear to hurt anything. In the future, we should seriously consider providing a more generally optimized system repository implementation that indexes the capabilities, which would also address this specific case. Please give the updated patch a shot to see if it results in similar improvements. If so, I don't see any reason why it shouldn't be released to trunk. > Performance improvement on the findProviders method in the SystemRepository > class > --------------------------------------------------------------------------------- > > Key: ARIES-1359 > URL: https://issues.apache.org/jira/browse/ARIES-1359 > Project: Aries > Issue Type: Improvement > Components: Subsystem > Affects Versions: subsystem-core-1.2.0, subsystem-2.0.1 > Environment: linux windows java > Reporter: Bas > Priority: Minor > Labels: patch, performance > Fix For: subsystem-core-1.2.0, subsystem-2.0.1 > > Attachments: aries-1359.patch, subsystem-systemrepository-patch.txt > > > Two improvements in the patch > 1) Application subsystems are not processed by the method because application > subsystems do not share capabilities. (I think it works like that but maybe > I'm wrongly interpreting the specification) > 2) All processed constituents are stored in a set and not processed again > when encountered in a different subsystem when they are being shared across > features. When using 60 features a shared bundle used to be processed 60 > times. -- This message was sent by Atlassian JIRA (v6.3.4#6332)