engineering
Dispatch
A JSONB column does not eliminate your schema. It moves schema enforcement from the database into every application query that touches the column. The schema is still there — just invisible.
engineering
Dispatch
pg_stat_wal_receiver shows what the standby knows about its own replication connection. When it goes stale, your standby is falling behind and nobody is watching.
engineering
Dispatch
Named Docker volumes survive container deletion, docker compose down, and even image rebuilds. Most developers discover this when they expect a fresh database and get yesterday's data instead.
engineering
Dispatch
A generated column computes its value from other columns in the same row. Postgres stores the result on every write. One declaration in the schema replaces scattered application logic.
engineering
Dispatch
The default Postgres statement timeout is zero. No limit. A single runaway query can hold a connection indefinitely, exhaust your pool, and take down every request behind it.
engineering
Dispatch
Every unused index costs write throughput, disk space, and vacuum time. pg_stat_user_indexes tells you which indexes have never been scanned since the last stats reset. Most databases have at least one index nobody uses.
engineering
Dispatch
Five retries over five minutes fails when the receiver is down for maintenance. Five retries over 25 hours succeeds. The retry window matters more than the count. Most get this backward.
engineering
Dispatch
Postgres logical replication subscribers can fall behind silently. pg_stat_subscription exposes the lag dimensions you need to monitor before the publisher's WAL retention becomes a disk crisis.
engineering
Dispatch
Postgres maintains small page caches for transaction metadata that most monitoring skips entirely. pg_stat_slru exposes their hit rates, and the numbers reveal problems you cannot see elsewhere.
engineering
Dispatch
Postgres has no stored row count. Every COUNT(*) checks each row for MVCC visibility. The right alternative depends on whether you need an exact number or a good-enough estimate.
engineering
Dispatch
When a popular cache key expires, every concurrent request hits the database at once. The fix depends on whether you have fifty hot keys or fifty thousand.
engineering
Dispatch
pg_repack rebuilds bloated tables online without the ACCESS EXCLUSIVE lock that makes VACUUM FULL and CLUSTER unusable on production systems. It is the missing middle ground between autovacuum and downtime.