tmail-backend icon indicating copy to clipboard operation
tmail-backend copied to clipboard

[S3 reliability] Partial error handling

Open Arsnael opened this issue 5 months ago • 5 comments

After completing the previous task (cf #1198 ), you will need to change the behavior of partial failure case to handle retries with a RabbitMQ queue.

GIVEN we parallely write to blobStoreA and blobStoreB
WHEN write on blobStoreA succeeds and write on blobStoreB fails (or the reverse)
THEN we publish a message on RabbitMQ to retry the write operation later
AND the write succeeds

This means we need to set up a RabbitMQ queue to retry failed writes. The listener of the queue would then asynchronously read blobStoreA to complete the write on blobStoreB.

Definition of done:

  • Integration tests

Arsnael avatar Sep 24 '24 09:09 Arsnael