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