Notes
Short, practical write-ups. Newest first.
- 26 Oct 2026 · 3 minAdding a column and an index without downtimePostgres migration patterns that avoid long locks: fast column adds, concurrent indexes, NOT VALID constraints, batched backfills.
- 12 Oct 2026 · 3 minFinding and fixing N+1 queriesHow N+1 patterns happen, how to catch them in logs and pg_stat_statements, and three ways to fix them.
- 28 Sept 2026 · 3 minB-tree, partial and covering indexes in PostgresWhere B-tree, partial and covering indexes help, how column order matters, and what every extra index costs on writes.
- 14 Sept 2026 · 4 minReading a Postgres query plan from the bottom upA practical walk through EXPLAIN (ANALYZE, BUFFERS): tree shape, cost units, estimate errors, loops, and what to check first.