Page MenuHomePhabricator

Send recurring payment notifications to the donations queue
Open, MediumPublic

Description

We're getting deadlocks when the recurring queue consumer runs at the same time as the donations queue consumer.

Let's make the recurring queue consumer strictly responsible for starting/ending new subscriptions.

The normal donations queue consumer IS capable of handling some recurring payments, but we need to move a little bit of normalization from the recurring queue consumer to the main normalization function.

Event Timeline

Ejegg triaged this task as Medium priority.
Ejegg moved this task from Backlog to Doing on the Fundraising Sprint YAMLton, the Musical board.

Change 556829 had a related patch set uploaded (by Ejegg; owner: Ejegg):
[wikimedia/fundraising/SmashPig@master] WIP send recurring payments to donations queue

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

So there is indeed some recurring-specific normalization happening in the RecurringQueueConsumer, mostly stuff specific to paypal messages. We'd have to move that over to someplace in the donations queue consumer before we merge the above patch.

Ejegg renamed this task from Should we send recurring payment notifications to the donations queue to Send recurring payment notifications to the donations queue.Feb 6 2020, 5:40 PM
Ejegg updated the task description. (Show Details)

The recurring-specific normalization has two parts: 1) finding the contribution_tracking_id and 2) dealing with paypal inconsistencies in migrating legacy to new subscription ID formats.

  1. looks first in the 'custom' field - this should be handled upstream in paypal message normalization.