Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
Installer Core 3.6.4
-
None
Description
The OsgiInstaller doesn't update a bundle properly, if there's an exception from the framework.
I have this exception:
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)
I don't know for what reason the Felix.updateBundle() failed (see also FELIX-5138 to get some more information in this case), but from my point of view there should be a dedicated error handling just for the
BundleImpl.update
call. Does it make sense to retry the installation at a later point in time (maybe 3 times at max)?
(I got this exception when I deployed a large number of bundles through the JCR installer. It happens only once in a while, but it's an annoying task to fix it manually.)
Attachments
Issue Links
- is related to
-
SLING-6491 Make RestartActiveBundlesTask#execute more resilient.
- Closed
-
SLING-6522 Refactor/Improve error handling of InstallTasks
- Open
- links to