Deep Dives
In-depth breakdowns of real system design decisions

Transaction ID Wraparound in Postgres: an outage to remember

Mar 28, 2026
Anunay Biswas · Software Engineer

How Sentry's PostgreSQL primary stopped accepting writes in 2015 due to XID wraparound — a knowable failure that many production systems are still vulnerable to.

PostgreSQLpostgresRedisredisdistributed-systems

Distributed Transactions with the SAGA Pattern

Mar 31, 2026
Anunay Biswas · Software Engineer

Distributed systems can't use database transactions to span multiple services. The SAGA pattern is how you get consistency anyway — but it comes with constraints most teams underestimate.

Apache KafkakafkaPostgreSQLpostgresdistributed-systems

The books didn't balance. Here's how the outbox pattern saved our distributed transaction

Mar 28, 2026
Anunay Biswas · Software Engineer

How the outbox pattern eliminates phantom transactions between your database and event stream — and why at-least-once delivery with idempotent consumers is the right tradeoff.

PostgreSQLpostgresApache Kafkakafkadistributed-systems

Simple Chain of events that brought down Slack

Mar 31, 2026
Anunay Biswas · Software Engineer

A routine software update that should have taken minutes accidentally deleted Slack's entire cache, triggering a chain reaction that brought down one of the world's most-used workplace tools.

MySQLmysqlRedisredis

Implementing the SAGA Pattern with Temporal

Mar 31, 2026
Anunay Biswas · Software Engineer

The SAGA pattern solves distributed consistency — but wiring it with Kafka requires a lot of plumbing you have to get right yourself. Temporal handles reliable execution, retries, and compensation in the workflow runtime, so you can focus on the business logic.

TemporaltemporalPostgreSQLpostgresdistributed-systems