OBR fails to deploy a bundle depending on an older version of an updated bundle
-------------------------------------------------------------------------------

                 Key: FELIX-3446
                 URL: https://issues.apache.org/jira/browse/FELIX-3446
             Project: Felix
          Issue Type: Bug
          Components: Bundle Repository (OBR)
    Affects Versions: bundlerepository-1.6.6
         Environment: Ubuntu 10.04 64bit (2.6.32-40-generic x86_64 GNU/Linux)
Felix Framework 

Others (apart from the test ones) active bundles:
> System Bundle (4.0.2)
> Apache Felix Bundle Repository (1.6.6)
> Apache Felix Gogo Command (0.12.0)
> Apache Felix Gogo Runtime (0.10.0)
> Apache Felix Gogo Shell (0.10.0)
            Reporter: Matías San Martín


Given the test bundles 
* SymbolicName: Primerbundle | Bundle-Version: 1.0.0.1 | exports: 
(test.osgi.primerbundle;version="1.0.0")
* SymbolicName: Primerbundle | Bundle-Version: 1.0.0.2| exports: 
(test.osgi.primerbundle;version="1.0.0")
* SymbolicName: Dependiente | Bundle-Version: 1| depends: 
(test.osgi.primerbundle;version="1.0.0" )
* SymbolicName: Dependiente_Especifico | Bundle-Version: 1| depends: 
(test.osgi.primerbundle;bundle-version="[1.0.0.2,1.0.0.2]")

Steps to reproduce the error:
1- Install a repository file with the bundles just mentioned
2- deploy -s Dependiente
    ==> this also deploys Primerbundle version 1.0.0.2 
3- deploy -s [email protected]
    ==> this __updates__ the previously deployed Primerbundle (version 1.0.0.2)
4- refresh
    ==> so [email protected] is completely uninstalled from the framework
5- deploy -s DexA
    ==> this deployment __fails__ 

The step 5 prints the following exception:
        Target resource(s):
        -------------------
           Dependiente_Especifico (1.0.0)

        Deploying...
        ERROR: Resolver: Start error - Dependiente_Especifico
        org.osgi.framework.BundleException: Unresolved constraint in bundle 
Dependiente_Especifico [416]: Unable to resolve 416.0: missing requirement 
[416.0] osgi.wiring.bundle; 
(&(osgi.wiring.bundle=test.osgi.primerbundle)(bundle-version>=1.0.0.2)(bundle-version<=1.0.0.2))
                at 
org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3826)
                at org.apache.felix.framework.Felix.startBundle(Felix.java:1868)
                at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:944)
                at 
org.apache.felix.framework.BundleImpl.start(BundleImpl.java:931)
                at 
org.apache.felix.bundlerepository.impl.ResolverImpl.deploy(ResolverImpl.java:630)
                at org.apache.felix.gogo.command.OBR.deploy(OBR.java:387)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
                at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:616)
                at 
org.apache.felix.gogo.runtime.Reflective.invoke(Reflective.java:137)
                at 
org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82)
                at 
org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:477)
                at 
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:403)
                at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
                at 
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183)
                at 
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120)
                at 
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89)
                at org.apache.felix.gogo.shell.Console.run(Console.java:62)
                at org.apache.felix.gogo.shell.Shell.console(Shell.java:203)
                at org.apache.felix.gogo.shell.Shell.gosh(Shell.java:128)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
                at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:616)
                at 
org.apache.felix.gogo.runtime.Reflective.invoke(Reflective.java:137)
                at 
org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82)
                at 
org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:477)
                at 
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:403)
                at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
                at 
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183)
                at 
org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120)
                at 
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89)
                at org.apache.felix.gogo.shell.Activator.run(Activator.java:75)
                at java.lang.Thread.run(Thread.java:636)
        done.

-------------------------------------------
Additional note:

If instead of step 5, we execute
 deploy -s [email protected]
The OBR says it deployed successfully the bundle but it has not, 
[email protected] remains deployed




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to