Page MenuHomePhabricator

Use the new queue wrapper for limbo, antimessage, and orphan slaying
Closed, ResolvedPublic4 Story Points

Description

The first imperative is how to fulfill our PCI obligations. To do that, we
prevent any queue read access from the payments cluster.

The orphan slayer relies on read access, so we host the limbo queue on the
payments Memcache instance rather than ActiveMQ.

Migration plan for antimessages

Antimessages were a workaround for ActiveMQ, because deleting a message by
selector is slow. With memcache, we can easily delete by key. We'll get
rid of antimessages in the following order:

  • All code that writes to the limbo queue will start writing to both queues.
  • Wait until the Memcache queue has filled up and any messages only written to ActiveMQ have expired (TBD: expected lifespan).
  • Check Memcache contents for sanity.
  • Deploy new code which reads from Memcache.
  • Confirm sanity, then stop writing to ActiveMQ.

TODO:
Whatever we do for the pending queue needs to be plugged in at both ends.

Details

Related Gerrit Patches:
mediawiki/extensions/DonationInterface : masterWIP Stop writing limbo messages to ActiveMQ
mediawiki/extensions/DonationInterface : masterWIP Use DonationQueue in the orphan slayer
mediawiki/extensions/DonationInterface : deploymentMemcache should accurately mirror the legacy limbo queue
mediawiki/extensions/DonationInterface : deploymentUse DonationQueue for limbo queuing
mediawiki/extensions/DonationInterface : deploymentMemcache should accurately mirror the legacy limbo queue
mediawiki/extensions/DonationInterface : deploymentUse DonationQueue for limbo queuing
mediawiki/extensions/DonationInterface : masterMemcache should accurately mirror the legacy limbo queue
mediawiki/extensions/DonationInterface : masterUse DonationQueue for limbo queuing
mediawiki/extensions/DonationInterface : masterDO NOT MERGE Also use DonationQueue in the orphan slayer
mediawiki/extensions/DonationInterface : masterWIP Use DonationQueue in orphan slayer

Related Objects

StatusAssignedTask
DeclinedNone
ResolvedPcoombe
DeclinedNone
OpenNone
OpenNone
ResolvedNone
Declined atgo
ResolvedNone
DeclinedNone
DeclinedNone
OpenNone
OpenNone
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Resolvedawight
Invalidawight
Resolvedawight
DeclinedNone
DeclinedNone
DeclinedNone
DeclinedNone

Event Timeline

awight created this task.Mar 17 2015, 12:00 AM
awight raised the priority of this task from to Needs Triage.
awight updated the task description. (Show Details)
awight added subscribers: awight, Aklapper.
awight added a parent task: Restricted Task.Mar 17 2015, 12:03 AM
awight added a parent task: Restricted Task.Mar 17 2015, 12:12 AM
atgo triaged this task as Normal priority.Mar 25 2015, 8:27 PM
atgo set Security to None.
atgo edited a custom field.Mar 25 2015, 10:34 PM
awight updated the task description. (Show Details)Mar 31 2015, 12:31 AM
awight edited a custom field.

Change 203225 had a related patch set uploaded (by Awight):
WIP Use DonationQueue in orphan slayer

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

Change 203225 abandoned by Awight:
WIP Use DonationQueue in orphan slayer

Reason:
nothing.

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

Change 203282 had a related patch set uploaded (by Awight):
Use DonationQueue in the orphan slayer

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

awight claimed this task.Apr 12 2015, 2:15 AM
awight moved this task from Backlog to Doing on the Fundraising Sprint House of Pain board.
awight moved this task from Review to Doing on the Fundraising Sprint Indigo Girls board.
awight updated the task description. (Show Details)Apr 27 2015, 9:54 PM
awight updated the task description. (Show Details)
awight renamed this task from Use the new queue wrapper for orphan slaying queue stuff to Use the new queue wrapper for limbo, antimessage, and orphan slaying.Apr 27 2015, 10:19 PM
awight added subscribers: atgo, AndyRussG.
awight updated the task description. (Show Details)Apr 27 2015, 10:35 PM

Change 206312 had a related patch set uploaded (by Awight):
WIP Use DonationQueue for limbo queuing

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

Change 207017 had a related patch set uploaded (by Awight):
WIP Stop writing limbo messages to ActiveMQ

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

Change 206312 abandoned by Awight:
WIP Use DonationQueue for limbo queuing

Reason:
Continued as @I8ada28ac02f77200b6c34aaa792f6750d585264b

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

Change 206312 restored by Awight:
WIP Use DonationQueue for limbo queuing

Reason:
nvm

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

Change 207029 had a related patch set uploaded (by Awight):
DO NOT MERGE Also use DonationQueue in the orphan slayer

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

Change 207029 abandoned by Awight:
DO NOT MERGE Also use DonationQueue in the orphan slayer

Reason:
split into subpatches

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

Breadcrumb to self: currently smoke testing https://gerrit.wikimedia.org/r/#/c/206312/

Change 206312 merged by jenkins-bot:
Use DonationQueue for limbo queuing

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

Change 209831 had a related patch set uploaded (by Awight):
Memcache should accurately mirror the legacy limbo queue

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

Change 209831 merged by jenkins-bot:
Memcache should accurately mirror the legacy limbo queue

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

Change 210190 had a related patch set uploaded (by Awight):
Use DonationQueue for limbo queuing

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

Change 210194 had a related patch set uploaded (by Awight):
Memcache should accurately mirror the legacy limbo queue

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

Change 210190 merged by jenkins-bot:
Use DonationQueue for limbo queuing

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

Change 210194 merged by jenkins-bot:
Memcache should accurately mirror the legacy limbo queue

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

Change 210731 had a related patch set uploaded (by Awight):
Use DonationQueue for limbo queuing

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

Change 210735 had a related patch set uploaded (by Awight):
Memcache should accurately mirror the legacy limbo queue

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

Change 210731 merged by jenkins-bot:
Use DonationQueue for limbo queuing

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

Change 210735 merged by jenkins-bot:
Memcache should accurately mirror the legacy limbo queue

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

Change 203282 abandoned by Awight:
WIP Use DonationQueue in the orphan slayer

Reason:
Done elsewhere.

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

Change 207017 abandoned by Awight:
WIP Stop writing limbo messages to ActiveMQ

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

awight closed this task as Resolved.Aug 6 2015, 8:01 PM
awight removed a parent task: Restricted Task.Aug 13 2015, 10:31 PM
mmodell removed a subscriber: awight.Jun 22 2017, 9:38 PM