[ 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)