Partial failure
On This Lesson 4 topics
This lesson is planned. The outline below lists the topics it will cover. The full lesson has not been published yet.
In this lesson
explain why a timeout is not a failure.
Planned topics
- In one process, a call succeeds or fails. Across a network, parts fail while others work.
- A timeout means "no answer in time". The request may have been lost, executed, or the reply lost.
- Retrying a payment after a timeout risks charging twice.
- The sender cannot tell which case happened without asking again or checking state.
- Defences: idempotency keys, status queries, and reconciliation (MID-029).
Draft outline details
Demonstration
Shop --charge $50--> Payments (Payments charges the card)
Shop <--response lost-- Shop sees a timeoutCheck your understanding
After a timeout, did the operation happen?
Show answer
Unknown: it may or may not have.
Practice
Apply this lesson with the module's lab, exercises and quiz.
Marking a lesson complete is optional and you can undo it any time. Your progress stays in this browser.