[
https://issues.apache.org/jira/browse/SLING-2339?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Carsten Ziegeler resolved SLING-2339.
-------------------------------------
Resolution: Fixed
Fixed in revision 1221764
> Updates (removes/add) are not correctly handled if no task execution occurs
> in between
> --------------------------------------------------------------------------------------
>
> Key: SLING-2339
> URL: https://issues.apache.org/jira/browse/SLING-2339
> Project: Sling
> Issue Type: Bug
> Components: Installer
> Affects Versions: Installer Core 3.2.2
> Reporter: Carsten Ziegeler
> Assignee: Carsten Ziegeler
> Fix For: Installer Core 3.2.4
>
>
> A provider first does a rendezvous with the installer by calling
> registerResources. From this point on, it just sends updates either added or
> removed resources.
> These changes are put into two lists: one for added resources and one for
> removed ones. When the installer has finished processing tasks it tasks the
> two lists and processes these updates.
> Now it can happen that:
> - provider reports resource /a is removed
> - /a is put into the removed list
> - provider reports resource /a is added
> - /a is put into the added list
> - installer is finished with processing and processes both lists. As the
> remove list has higher precedence, this ends up in /a being recognized as
> removed!
> So on each update we have to check:
> - if a resource is added, remove it from the removed list
> - if a resource is removed, remove if from the added list
--
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