•  
      request #13666 Worker running the asynchronous event might work on outdated data
    Infos
    #13666
    Thomas Gerbet (tgerbet)
    2019-09-19 10:31
    2019-07-24 16:22
    14843
    Details
    Worker running the asynchronous event might work on outdated data
    The workers running the asynchronous events execute up to 1000 different events before stopping themselves. This model is completely different than the usual "process and die" under which large parts of Tuleap has been designed and lead to unexpected behaviors with the current codebase.
    This can be easily seen with the tracker notifications:
    1. In a tracker with the notifications enabled, create a new artifact -> you receive an email
    2. Disable the notification of this tracker
    3. Create a new artifact -> you still receive an email


    The reference to the object representing the tracker has been kept in cache so when the event of the creation of the second artifact is processed, it looks like the tracker still has the notification enabled since the object kept in memory has not been updated.
    Empty
    All
    Empty
    • [ ] enhancement
    • [ ] internal improvement
    Empty
    Stage
    Thomas Gerbet (tgerbet)
    Closed
    2019-08-23
    Attachments
    Empty
    References

    Follow-ups

    User avatar
    Thomas Gerbet (tgerbet)2019-08-23 08:59
    Closing this one since the issue itself has been fixed. I'm going to open on a new request to work on "the fancier solution" for the performance improvement.
    User avatar
    Thomas Gerbet (tgerbet)2019-07-26 18:19
    Actual fix can be reviewed here: gerrit #15621. After that, I have fancier solution to do the processing of the async events in a PHP FPM pool.