Connection pool exhaustion in payments gateway (EKS)
- Customer-impacting 5xx spike on
/v2/charge— p99 latency crossed 4.8s. - SteelRats engineer joined the bridge in 27 seconds via PagerDuty escalation policy.
- Root cause isolated: RDS Proxy connection pool pinned by a stuck Lambda on the consumer side.
- Mitigation: drained the stuck connections and bumped pool ceiling by 40% behind a feature flag.
- Error rate returned to baseline; bridge stood down.
Root cause
A burst of asynchronous reconciliation jobs held database connections open across a 60-second Lambda timeout, starving the synchronous charge path of pooled connections.
Remediation shipped next morning
- Hard 8-second ceiling on reconciliation Lambdas with circuit breaker.
- RDS Proxy pool ceiling raised 40% behind a kill-switch flag.
- New synthetic probe fires on p99 latency > 2s for 90s.
- Runbook entry:
runbook/payments/db-pool-starvation.md.