engineering
Dispatch
KEYS pattern scans the entire keyspace in a single-threaded O(N) sweep, blocking every other command for its duration. It works fine in development with a thousand keys. It brings down production with ten million.
engineering
Dispatch
pg_stat_activity shows you every backend currently known to Postgres. Most engineers look at it after something breaks. You should look at it before you run anything that matters.
engineering
Dispatch
Your Sidekiq queue has been dropping jobs for three days. No errors. No alerts. The jobs simply never ran. The cause is a single Redis config line that ships as a sensible default for caches and a disaster for job queues: maxmemory-policy allkeys-lru.
engineering
Dispatch
Autovacuum ran for six hours. You don’t know if it’s 10% done or 90% done. pg_stat_progress_vacuum tells you — but only if you know which seven columns actually matter and what the view cannot see.
engineering
Dispatch
Your process reports 400MB RSS. Docker reports 1.2GB usage. The OOM killer fires at a limit you thought you weren't near. Here's what's actually being counted.
engineering
Dispatch
pg_stat_bgwriter told you something was wrong. pg_stat_io tells you what, where, and how much. Here's how to read it.
engineering
Dispatch
Twice a year, DST transitions silently corrupt scheduled task logic. The bugs are predictable, preventable, and almost always caused by the same mistake: scheduling in wall-clock time instead of UTC.
engineering
Dispatch
WAL mode gives SQLite concurrent reads without locking writers—but the checkpoint that flushes WAL frames back to the database file is where things quietly go wrong.
engineering
Dispatch
pg_dump exits 0 and you sleep soundly. Three failure modes only appear on restore: encoding mismatches, missing roles, and sequences resuming from the wrong position. You haven't tested your backup until you've restored it.
engineering
Dispatch
The bgwriter daemon writes dirty pages to disk before checkpoints need to. pg_stat_bgwriter tells you whether it's actually helping—or whether checkpoints and backends are doing the work instead.
engineering
Dispatch
You set a DNS TTL of 60 seconds because you want fast failover. Your actual propagation time is 20 minutes. Here is where each caching layer ignores your TTL and what you can do about it.
engineering
Dispatch
Postgres ships a pub/sub mechanism built into the database itself. Two functions, no external dependencies, and a connection-scoped subscription lifecycle that most developers trip over exactly once.