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

        

Reply via email to