· 3 min · PostgreSQL

All Your GUCs in a Row: backslash_quote

A 2006 SQL injection vulnerability and multibyte character encodings created `backslash_quote`, a GUC parameter that remains in PostgreSQL for backward…

0 comments

· 4 min · PostgreSQL

Twenty Years in pgcrypto

A heap buffer overflow in pgcrypto's OpenPGP code lurked for two decades—until a December 2025 exploit made it real.

0 comments

· 4 min · PostgreSQL

All Your GUCs in a Row: backend_flush_after

PostgreSQL's complicated relationship with the Linux page cache spawns four GUCs to manage writeback—and backend_flush_after is the conservative one.

0 comments

· 4 min · PostgreSQL

Snowflake Postgres, Lakebase, HorizonDB: Picking the Lock-In You Want

Three major cloud platforms just shipped Postgres with custom storage engines and scale-out architectures.

0 comments

· 17 min · PostgreSQL

Managed Postgres, Examined: Google Cloud SQL for PostgreSQL

Google's managed PostgreSQL returns to first principles: a conventional instance on a VM with a regional disk, plus a distinctive data cache on Enterprise Plus…

0 comments

· 3 min · PostgreSQL

All Your GUCs in a Row: autovacuum_worker_slots

PostgreSQL 18 splits autovacuum configuration to finally let you tune worker concurrency without restarting.

0 comments

· 3 min · PostgreSQL

The wal_level You Set Is Not the wal_level You Get

PostgreSQL 19 finally lets wal_level adapt dynamically to your actual replication slots, eliminating the always-on WAL cost of logical standby insurance.

0 comments

· 3 min · PostgreSQL

All Your GUCs in a Row: autovacuum_work_mem

autovacuum_work_mem sets the maximum memory each autovacuum worker may use for tracking dead tuple identifiers (TIDs) during a vacuum. Default is -1, which mean

0 comments

· 3 min · PostgreSQL

All Your GUCs in a Row: autovacuum_vacuum_scale_factor and autovacuum_vacuum_threshold

Autovacuum's most powerful tuning lever: the scale factor that determines when dead tuples trigger a vacuum. On large tables, the 20% default waits too long.

0 comments

· 2 min · PostgreSQL

All Your GUCs in a Row: autovacuum_vacuum_max_threshold

PostgreSQL 18 finally fixes the autovacuum formula that left billion-row tables waiting for 200M dead tuples.

0 comments