· 1 min · Django

Django: dictionary update sequence element #0 has length 1; 2 is required

Django threw a cryptic "dictionary update sequence" error—but the real culprit was a forgotten `name=` parameter in a URL configuration.

0 comments

· 3 min · PostgreSQL

Estimates “stuck” at 200 rows?

PostgreSQL's query planner guesses exactly 200 distinct values when it lacks statistics on a parent partitioned table, leading to wildly inaccurate cost…

0 comments

· 1 min · Django

Django: Site matching query does not exist

Django's "Site matching query does not exist" error usually means you forgot to create a site record or set SITE_ID in settings—here's how to fix it.

0 comments

· 5 min · PostgreSQL

The Multi-Column Index of the Mysteries

Composite indexes on (A, B, C) can't help queries on just (B)? That's not technically true, but it's still good advice.

2 comments

· 2 min · PostgreSQL

A Cheap and Cheerful Replication Check

Monitor PostgreSQL replication lag with a simple timestamp table and cron job. This cheerful approach beats complex WAL math for many setups.

1 comment

· 1 min · PostgreSQL

Securing PostgreSQL at PGConf EU

Talk slides from PGConf EU 2016 on securing PostgreSQL are now available. Learn practical strategies for hardening your database against common threats.

1 comment

· 1 min · PostgreSQL

Unclogging the VACUUM at PGConf EU

The slides from "Unclogging the VACUUM" presentation at PGConf EU 2016 are now online. Learn how to keep PostgreSQL's cleanup process running smoothly.

1 comment

· 1 min · Django

Recent Slides

Mastering PostgreSQL across operations, compliance, and Python ecosystems: four talks on making Postgres work beyond the DBA role.

2 comments

· 1 min · PostgreSQL

Always Do This #5: The Elements of postgresql.conf Style

Stop mixing postgresql.conf edits between the middle and the end of the file.

7 comments

· 1 min · PostgreSQL

Indexes Are Not Cheap

More indexes don't always mean faster queries. Adding eight indexes to a test table slowed inserts by 14×, turning a 2-minute operation into 27 minutes.

1 comment