Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-5138

Felix should log underlying exception on failed bundle update

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • framework-5.0.1
    • framework-5.6.2
    • Framework
    • None

    Description

      I run an application, which is based on Apache Sling. We recently updated our bundles and I faced this message; as outcome my.custom.bundle wasn't updated properly.

      11.12.2015 14:09:36.753 *INFO* [FelixStartLevel] my.custom.bundle BundleEvent RESOLVED
      11.12.2015 14:09:36.753 *INFO* [FelixStartLevel] my.custom.bundle BundleEvent STARTING
      
      11.12.2015 14:09:36.754 INFO [OsgiInstallerImpl] org.apache.sling.installer.core.impl.tasks.BundleUpdateTask Removing failing update task - unable to retry: BundleUpdateTask: TaskResource(url=jcrinstall:/apps/myapp/install/my.custom.bundle-1.5.6-SNAPSHOT.jar, entity=bundle:my.custom.bundle, state=INSTALL, attributes=[org.apache.sling.installer.api.tasks.ResourceTransformer=:28:84:15:, Bundle-SymbolicName=my.custom.bundle, Bundle-Version=1.5.6-SNAPSHOT], digest=1449838063263)
      org.osgi.framework.BundleException: Bundle my.custom.bundle [252] cannot be update, since it is either starting or stopping.
      at org.apache.felix.framework.Felix.updateBundle(Felix.java:2311)
      at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:995)
      at org.apache.sling.installer.core.impl.tasks.BundleUpdateTask.execute(BundleUpdateTask.java:92)
      at org.apache.sling.installer.core.impl.OsgiInstallerImpl.doExecuteTasks(OsgiInstallerImpl.java:847)
      at org.apache.sling.installer.core.impl.OsgiInstallerImpl.executeTasks(OsgiInstallerImpl.java:689)
      at org.apache.sling.installer.core.impl.OsgiInstallerImpl.run(OsgiInstallerImpl.java:265)
      at java.lang.Thread.run(Thread.java:767)
      

      According to the code, Felix.updateBundle() prints this message only when acquireBundleLock() throws an IllegalStateException; and this IllegalStatement exception can have 2 different causes.
      It would be good, if the log message contains an information, which of these 2 reasons actually occurred. And it would be even better, if this action is actually retried, as this problem looks like a temporary issue for me.

      Attachments

        Issue Links

          Activity

            People

              karlpauls Karl Pauls
              joerghoh Joerg Hoh
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: