[
https://issues.apache.org/jira/browse/SLING-5014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dominik Süß updated SLING-5014:
-------------------------------
Attachment: SLING-5014-1.diff
[~bdelacretaz], [~cziegeler] the last days I created a patch for the installer
core and added a new bundle that implement a blacklist feature for the
installer.
The current bootstrap method just leads to uninstallation of a bundle but as
soon as further (non-uninstalled) candidates than the uninstalled ones exist in
the system the installer will install those. And even if this behavior would be
fixed nothing would prevent a user from accidentially triggering a new
installation by installing some obsolete Package containing such an installable.
The default blacklist implementation therefore by default takes the uninstall
commands from the sling_bootstrap.txt and prevents any installation (via
installer) of the defined bundles (respecting version ranges). It is also
possible to define further rules via osgi config.
The blacklist implementation does also take care of uninstallation and
downgrades and therefore eliminate issues with obsolete bundles hanging around
in the system and therefore preventing a clean uninstallation of bundles
without the need to do further housekeeping in the repository and/or filesystem.
> Uninstall directive in provisioning model might just lead to downgrade of
> bundle
> --------------------------------------------------------------------------------
>
> Key: SLING-5014
> URL: https://issues.apache.org/jira/browse/SLING-5014
> Project: Sling
> Issue Type: Bug
> Components: Installer
> Affects Versions: Installer Core 3.6.6
> Reporter: Dominik Süß
> Attachments: SLING-5014-1.diff
>
>
> In case a bundle has mutliple install candiates only the highest version
> (with the highest priorty for the same versions) wins. An uninstall directive
> uninstalls this version. The way the OSGi install behavior is defined this
> lets the next artifact in the priority queue to get active and consequently
> only leads to downgrade to the next in the queue.
> As the uninstall directive declares a range that should be uninstalled the
> expectation is that after a startup with such an uninstall directive none of
> the delcared versions are in an installed state. In consequence the OSGi
> installer must save this metainformation in the state that prevents a
> downgrade to a version that is part of an active uninstall directive.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)