-
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
area-resiliencyIssues part of improvements to OutboxKit resiliencyIssues part of improvements to OutboxKit resiliencyenhancementNew feature or requestNew feature or requestepicGroup of enhancementsGroup of enhancements
Description
Need to think about some additional resiliency features. Some loose ideas:
- When not all messages in a batch are produced, keep retrying the remainder, instead of breaking off the production loop
- This is particularly important if using pure push approaches, like PostgreSQL with WAL, where we can't mark things partially completed
- Not relevant for polling providers
- When there are issues with message production, have some backoff to avoid retying too much in a short amount of time
- Retry acknowledging produced messages
- Include some sort of "health check" abstraction, that the user can implement and OutboxKit checks, in order to pause trying to produce when either the database or the messaging infrastructure is having problems
- Handle poison messages?
- Not a fan of this, given it might mess up ordering guarantees, but may be worth having the option
- Detect when the database is in readonly mode (e.g. during a blue/green deployment) and stop trying to produce, as it won't be able to mark messages as completed
Metadata
Metadata
Assignees
Labels
area-resiliencyIssues part of improvements to OutboxKit resiliencyIssues part of improvements to OutboxKit resiliencyenhancementNew feature or requestNew feature or requestepicGroup of enhancementsGroup of enhancements
Type
Projects
Status
No status