If you found this useful:
1. Check your HTTP client configs for hedging
2. Audit your non-idempotent endpoints
3. Add idempotency keys where needed
4. Drop a 🔥 if you've been bitten by this before!
Follow for more distributed systems debugging stories.
🚨 I spent hours debugging why our API was creating DUPLICATE records in production.
The culprit? A resilience pattern I'd never heard of: Hedging
Here's what I learned about Retry vs Hedging (and why you need to know the difference) 🧵
5/5
The lack of a clear explanation and the contradictory status updates show a serious issue with Flipkart's system and customer service. It's incredibly frustrating to deal with this runaround. @Flipkart , why can't you just cancel the order? #FlipkartBigBillionDays
(1/5)
I cancelled a Flipkart order that was already "shipped." The app confirmed the cancellation, but then it got canceled itself—multiple times. I called customer care, who said they'd done it and to ignore notifications. A few minutes later, the status was "out for delivery."
(4/5)
Why "try"? I canceled the order on time, multiple times! They're forcing me to reject it at my door and then giving me no guarantee of a refund. This is completely unacceptable and feels like a scam to trap me into accepting a delivery I don't want.
(3/5)
When I asked what to do, the agent told me to reject the delivery at my doorstep. But the most alarming part? He said, "We will try to refund the order depending on the status."