Page MenuHomePhabricator

F14. Pushing notifications into the JobQueue should happen at the generateEventsForRevision() level
Open, LowPublic3 Story Points

Description

The current implementation of pushing notifications into the job queue happens at the per-event (before users are decided) level. IIRC this was done because of concerns that some notification types might notify several hundred users.

We should move the job queue work up to a much higher level, all the way to generateEventsForRevision(), where the only data that needs to be passed into the job queue is the revision id. We should do this because diffing, parsing, and deciding what happens takes around 1/3 of a second on every single wiki edit.

As a temporary solution, aaron has submitted and I have merged https://gerrit.wikimedia.org/r/#/c/211764 which puts this into DeferredUpdates. Another incoming patch will make the DeferredUpdates run in the same process but after the connection to the user has been closed.

Event Timeline

EBernhardson raised the priority of this task from to Needs Triage.
EBernhardson updated the task description. (Show Details)
EBernhardson added a project: Notifications.
EBernhardson added a subscriber: EBernhardson.
Restricted Application added a project: Collaboration-Team-Triage. · View Herald TranscriptMay 18 2015, 8:26 PM
Restricted Application added a subscriber: Aklapper. · View Herald Transcript
EBernhardson updated the task description. (Show Details)May 18 2015, 8:28 PM
EBernhardson set Security to None.
EBernhardson updated the task description. (Show Details)
DannyH triaged this task as Normal priority.May 20 2015, 8:04 PM
DannyH added a subscriber: DannyH.
DannyH edited a custom field.Jun 2 2015, 6:50 PM
DannyH moved this task from Untriaged to Ready for next sprint on the Collaboration-Team-Triage board.
Legoktm claimed this task.Jun 10 2015, 8:26 PM

Change 217674 had a related patch set uploaded (by Legoktm):
[WIP] Do after-save notification generate in the job queue if enabled

https://gerrit.wikimedia.org/r/217674

Legoktm moved this task from Backlog to In progress on the Notifications board.Jul 6 2015, 7:26 AM
DannyH renamed this task from Pushing notifications into the JobQueue should happen at the generateEventsForRevision() level to F14. Pushing notifications into the JobQueue should happen at the generateEventsForRevision() level.Jul 23 2015, 5:51 PM
Catrope removed Legoktm as the assignee of this task.Aug 5 2015, 5:45 PM
DannyH raised the priority of this task from Normal to High.Aug 11 2015, 5:24 PM
DannyH lowered the priority of this task from High to Low.Aug 11 2015, 11:14 PM
DannyH added subscribers: Catrope, Legoktm.

@Legoktm -- Is it okay to take this off the current workboard? @Catrope suggested I should ask.

Restricted Application added a project: Growth-Team. · View Herald TranscriptJul 18 2018, 6:53 PM
SBisson moved this task from Inbox to Triaged but Future on the Growth-Team board.Jul 20 2018, 5:07 PM