This will have FIFO behavior, and only one consumer will read from it.
Unfortunately, we might want to use a mirroring approach, where we write to both the old pending thing and the new queue.
This will have FIFO behavior, and only one consumer will read from it.
Unfortunately, we might want to use a mirroring approach, where we write to both the old pending thing and the new queue.
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Resolved | None | T117466 Q3 GOALS! (January-March) Keep at top of Q3 column | |||
| Resolved | None | T108229 [Epic] SPOF: Replace ActiveMQ donation queues with a more robust software stack | |||
| Resolved | None | T133108 [Epic] Rewrite all queue clients to use a single shim library, improve library | |||
| Resolved | awight | T133754 Upstream whatever we can to PHP-Queue | |||
| Resolved | awight | T133190 Remove KeyValueStore from PHP-Queue | |||
| Open | None | T134191 Write CiviCRM extension to view pending db records | |||
| Resolved | None | T130897 [Epic] Consolidate "pending" queue usages | |||
| Resolved | None | T133195 [Epic] All pending producers should write to a single pending queue |
Change 288439 had a related patch set uploaded (by Ejegg):
Add order ID to pending queue messages
Change 299797 had a related patch set uploaded (by Cdentinger):
WIP: Write all limbo queues to new pending queue.
Change 300677 had a related patch set uploaded (by Ejegg):
REALLY add order_id to queue messages
Deployment: please set the "queue" key so that the pending-new redis queue has actual name "pending":
$wgDonationInterfaceQueues = array(
"pending-new" => array(
"queue" => "pending",
"expiry" => 3600, // Or a few days.
"servers" => "tcp://localhost", // TBD
"type" => "PHPQueue\\Backend\\Predis"
),
);Change 301656 had a related patch set uploaded (by Ejegg):
Configurable queue mirroring
Deployed, just needs config change to add pending-new queue pointing to predis and this mirroring setup:
$wgDonationInterfaceQueueMirrors = array( 'pending' => 'pending-new', 'globalcollect-cc-limbo' => 'pending-new' );