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

Tom De Wolf resolved ARIES-1590.
--------------------------------
    Resolution: Fixed

> Subsystem install fails due to unexpected resolve conflict
> ----------------------------------------------------------
>
>                 Key: ARIES-1590
>                 URL: https://issues.apache.org/jira/browse/ARIES-1590
>             Project: Aries
>          Issue Type: Bug
>          Components: Subsystem
>            Reporter: Tom De Wolf
>            Priority: Blocker
>             Fix For: subsystem-2.1.0
>
>         Attachments: reproduce-base-subsystem-4.1.2-SNAPSHOT.esa, 
> reproduce-subsystem-4.1.2-SNAPSHOT.esa
>
>
> When we use the 2.0.9-SNAPSHOT version currently in development we get an 
> unexpected resolve conflict:
> {panel}
> DEBUG: Candidate permutation failed due to a conflict between imports; will 
> try another if possible. (org.osgi.service.resolver.ResolutionException: Uses 
> constraint violation. Unable to resolve resource 
> org.apache.servicemix.bundles.spring-core [116.0] because it is exposed to 
> package 'org.aspectj.bridge' from resources 
> com.reproduce.reproduce-base-subsystem 
> [org.apache.aries.subsystem.core.internal.BasicSubsystem: children=0, 
> constituents=60, id=3, 
> location=file:///Users/tom/Documents/code/aca-common/osgi-subsystem-support/reproduce-base-subsystem/target/reproduce-base-subsystem-4.1.2-SNAPSHOT.esa,
>  parents=1, state=INSTALLED, 
> symbolicName=com.reproduce.reproduce-base-subsystem, 
> type=osgi.subsystem.feature, version=4.1.2.SNAPSHOT] and 
> org.apache.servicemix.bundles.aspectj [111.0] via two dependency chains.
> Chain 1:
>   org.apache.servicemix.bundles.spring-core [116.0]
>     import: 
> (&(osgi.wiring.package=org.aspectj.bridge)(version>=1.7.1)(!(version>=2.0.0)))
>      |
>     export: osgi.wiring.package: org.aspectj.bridge
>   com.reproduce.reproduce-base-subsystem 
> [org.apache.aries.subsystem.core.internal.BasicSubsystem: children=0, 
> constituents=60, id=3, 
> location=file:///Users/tom/Documents/code/aca-common/osgi-subsystem-support/reproduce-base-subsystem/target/reproduce-base-subsystem-4.1.2-SNAPSHOT.esa,
>  parents=1, state=INSTALLED, 
> symbolicName=com.reproduce.reproduce-base-subsystem, 
> type=osgi.subsystem.feature, version=4.1.2.SNAPSHOT]
> Chain 2:
>   org.apache.servicemix.bundles.spring-core [116.0]
>     import: 
> (&(osgi.wiring.package=org.aspectj.weaver)(version>=1.7.1)(!(version>=2.0.0)))
>      |
>     export: osgi.wiring.package=org.aspectj.weaver; 
> uses:=org.aspectj.weaver.patterns
>   com.reproduce.reproduce-base-subsystem 
> [org.apache.aries.subsystem.core.internal.BasicSubsystem: children=0, 
> constituents=60, id=3, 
> location=file:///Users/tom/Documents/code/aca-common/osgi-subsystem-support/reproduce-base-subsystem/target/reproduce-base-subsystem-4.1.2-SNAPSHOT.esa,
>  parents=1, state=INSTALLED, 
> symbolicName=com.reproduce.reproduce-base-subsystem, 
> type=osgi.subsystem.feature, version=4.1.2.SNAPSHOT]
>     import: 
> (&(osgi.wiring.package=org.aspectj.weaver.patterns)(&(version>=1.7.1)(!(version>=2.0.0))))
>      |
>     export: osgi.wiring.package: org.aspectj.weaver.patterns; 
> uses:=org.aspectj.bridge
>     export: osgi.wiring.package=org.aspectj.bridge
>   org.apache.servicemix.bundles.aspectj [111.0])
> {panel}
> It is unexpected because 1 of the 2 chains points to the actual bundle that 
> exports the package and the other of the 2 chains points to the base 
> subsystem already installed in the runtime. In fact the bundle is part of 
> that subsystem so it should consider both as exactly the same and not 
> consider it as 2 chains he cannot resolve.
> Not sure if it is related to ARIES-1588 and the commit mentioned there but 
> that commit does affect how already installed subsystems are taken into 
> account in the resolve process.
> Note: we are using the felix resolver 1.4.0, verified it has the same problem 
> with 1.8.0
> Steps to reproduce:
> 1. start clean felix
> 2. install the attached reproduce-base-subsystem-4.1.2-SNAPSHOT.esa, do not 
> start it
> 3. install the attached reproduce-subsystem-4.1.2-SNAPSHOT.esa
> Step 3 will start failing in DEBUG logging with chain errors like above. It 
> will try a number of permutations but it will not get out of it. 
> Note: which bundles and packages are shown in the example log above are less 
> important as we have multiple such kind of errors for which only the package 
> and bundles differ.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to