Page MenuHomePhabricator

[epic] SPOF: Use Redis as backend store for contribution_tracking
Closed, ResolvedPublic

Description

Rewrite (incrementally or in full) the ContributionTracking modules. This work is complete when we no longer have a SPOF in contribution tracking data.

  • Ideally we consolidate to a single PHP library.
  • Schema migration must be deployed ever so carefully, and with no irreversible steps until we're 100% confident in the new data. This is everything we own, don't set it alight.
  • Push on timeline for Redis 3 clustering support, which allows for invisible high availability with no added code complexity. See Redis 2 HA hooks in DI::DonationQueue to see why this is important.
  • Shared sequence generator.
  • Entries older than 1 hour can be kept in cold storage.
  • We'll need a staging Redis cluster for QA.
  • Vagrant module to easily provision a 2+ -node Redis cluster.

Event Timeline

DStrine lowered the priority of this task from High to Medium.Jan 26 2017, 12:30 AM
Ejegg claimed this task.

We're now using Redis as a transient store (queue) on the way to the old table, and as a sequence generator.