Home » Eclipse Projects » Virgo » Sudden failure of dependency resolution
Sudden failure of dependency resolution [message #634848] |
Sun, 24 October 2010 11:22  |
Eclipse User |
|
|
|
HI I have a plan with dependencies to bundles that lie in repository/usr. It used to deploy fine until an hour ago. Now it fails with a whole lot of dependency errors (takes two minutes to calculate) like
[2010-10-24 16:50:01.318] TCP Connection(2)-127.0.0.1 <DE0002E> Installation of plan 'eiswind-publishing-server.plan' version '1.7.0' failed. org.eclipse.virgo.kernel.osgi.framework.UnableToSatisfyBundleDependenciesException: Unable to satisfy dependencies of bundle 'eiswind-publishing-server.plan-1.7-de.eiswind.mango.domain' at version '1.7.0.20101020': Cannot resolve: eiswind-publishing-server.plan-1.7-de.eiswind.mango.domain
Unsatisfied leaf constraints:
Bundle: eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core_1.7.0 - Import-Package: org.codehaus.groovy.runtime.dgmimpl; version="0.0.0"
Did you mean: 'org.aspectj.runtime.internal'?
Bundle: eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core_1.7.0 - Import-Package: org.apache.jackrabbit.core.query; version="0.0.0"
Did you mean: 'org.apache.jk.core'?
... a million other lines
I tried to clear stage and work directory, but it still fails. I dont know what I did to make it break.
In the dump I can see that virgo recognizes my bundles in usr.. I depend on the bundles using import-bundle so I completely don't get it.
There must be something broken I guess, as it did work all the time.
Any hints would be greatly appreciated.
Regards Thomas
|
|
| | | | | | |
Re: Sudden failure of dependency resolution [message #635032 is a reply to message #634986] |
Mon, 25 October 2010 09:24   |
Eclipse User |
|
|
|
I'm surprised you don't get a dump as that's normal for resolution failures and the DE0002E message is normally issued straight after the dump generated message ME0003I.
If you'd like to diagnose why you're not getting a dump, please debug org.eclipse.virgo.kernel.userregion.internal.quasi.Dependenc yCalculator.calculateDependencies
doSatisfyConstraints(bundles, state);
StateDelta delta = state.resolve(bundles);
for (BundleDescription description : bundles) {
if (!description.isResolved()) {
generateDump(state);
and see whether generateDump is called and, if so, why it doesn't work.
However, I'm not surprised you don't see any bundles added to OSGi because we do this dependency calculation in a "side" state to avoid polluting the OSGi framework (actually the user region). It is this side state which should be dumped to disk and which you can then, hopefully fruitfully, explore using the admin console to determine the real source of the error.
If you do find the time to attach a debugger, the doSatisfyConstraints method above should pull in the dependencies from repository/usr into the side state, so you'll be able to see whether you are getting the set of dependencies you expect.
Hope that's some help!
|
|
|
Re: Sudden failure of dependency resolution [message #635125 is a reply to message #635032] |
Mon, 25 October 2010 12:57   |
Eclipse User |
|
|
|
HI Glyn, don't have time to debug until the weekend. But I tried the following: I removed all Import-Bundle and Import-Library from the manifest. Now its says something even more strange to me:
[2010-10-25 18:48:55.265] TCP Connection(35)-127.0.0.1 <DE0003E> Install failed for plan 'eiswind-publishing-server.plan' version '1.7.0'.
[2010-10-25 18:48:55.272] TCP Connection(35)-127.0.0.1 <DE0500E> Unable to install application from URI 'file:/C:/virgo-web-server-2.1.0.RC1-incubation/stage/server.plan'. Cannot satisfy constraints for bundle 'eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core' version '1.7.0'. Cannot resolve: eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core
. org.eclipse.virgo.kernel.osgi.framework.UnableToSatisfyBundleDependenciesException: Unable to satisfy dependencies of bundle 'eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core' at version '1.7.0': Cannot resolve: eiswind-publishing-server.plan-1.7-de.eiswind.mango.server.core
at org.eclipse.virgo.kernel.install.pipeline.stage.resolve.internal.QuasiResolveStage.process(QuasiResolveStage.java:45)
at org.eclipse.virgo.kernel.install.pipeline.internal.StandardPipeline.doProcessTree(StandardPipeline.java:62)
which I do not understand at all. I'll show you my Manifest
Manifest-Version: 1.0
Bundle-Vendor: Eiswind Software
Bundle-Name: Server Core
Bundle-SymbolicName: de.eiswind.mango.server.core
Bundle-Version: 1.7.0
Bundle-ManifestVersion: 2
Import-Package: javax.persistence;version="[2.0.0,2.0.0]",
javax.persistence.criteria;version="[2.0.0,2.0.0]",
javax.persistence.metamodel;version="[2.0.0,2.0.0]",
javax.persistence.spi;version="[2.0.0,2.0.0]",
javax.sql,
org.apache.log4j;version="[1.2.16,1.2.16]",
org.aspectj.lang;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.lang.annotation;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.lang.internal.lang;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.lang.reflect;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.runtime;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.runtime.internal;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.runtime.internal.cflowstack;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.runtime.reflect;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.ast;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.bcel;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.bcel.asm;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.internal.tools;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.loadtime;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.loadtime.definition;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.ltw;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.model;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.patterns;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.reflect;version="[1.6.5,1.6.6.RELEASE]",
org.aspectj.weaver.tools;version="[1.6.5,1.6.6.RELEASE]",
org.springframework.osgi.compendium.cm;version="[1.2.1,1.2.1]"
Export-Package: de.eiswind.mango.server.foreignkeys,
de.eiswind.mango.server.hibernate,
de.eiswind.mango.server.jbpm,
de.eiswind.mango.server.jobs,
de.eiswind.mango.server.messages,
de.eiswind.mango.server.setup,
de.eiswind.mango.server.xmpp,
de.eiswind.mango.server.xmpp.locking,
de.eiswind.paris.server.aspects,
de.eiswind.paris.server.core,
de.eiswind.paris.server.dao,
de.eiswind.paris.server.factsheet,
de.eiswind.paris.server.services.catalogue,
de.eiswind.paris.server.services.impl,
de.eiswind.paris.server.services.mailinglist
Any idea on this? I get the same when I try to deploy the bundle alone (without the rest of the plan)
btw I started on a clean rc1 installation with spring 3.0.4
and javax.persistence 2.0.0 added an hour ago, so it must be something wrong with my bundle. I guess its not virgo' s fault then.
|
|
| | | | |
Re: Sudden failure of dependency resolution [message #636630 is a reply to message #636278] |
Tue, 02 November 2010 05:43  |
Eclipse User |
|
|
|
Glad you got to the root cause! However, I agree that the diagnostics were not particularly helpful in this case. Please would you raise a bug and attach the full stack trace of the FatalAssertionException? If you could also afford the time to package up a simple test that reproduces the problem, that would be extremely helpful.
|
|
|
Goto Forum:
Current Time: Tue Jul 22 18:06:19 EDT 2025
Powered by FUDForum. Page generated in 0.04729 seconds
|