Back matter · 20 min read
Bibliography
Every source the book cites, grouped by kind, with the chapters that cite it.
Every source the chapters cite, in their Further reading or in their text, is listed here once, so you can find the original behind any claim without hunting. Start with the manual. Read the source notes and papers when you want the why behind a mechanism. Treat vendor pages as snapshots.
Each entry gives the title, the author or publisher, the year where one applies, and the chapters that cite it. A chapter's Further reading says what a source is good for; this page says where it's cited. Living documentation has no year, so the chapters say when they checked each vendor fact.
Chapters are cited by short name: preface (Before you start); basics (Know the nouns first); latency (Where the time goes); storage (Everything is a page); buffers (The buffer cache decides what stays); MVCC (Updates are inserts); HOT (Keep your updates HOT); WAL (Write it down first); ACID (ACID, honestly); vacuum (Vacuum is not optional); not MySQL (Postgres is not MySQL); types (Types are a contract); keys (Pick your keys once); relationships (Constraints, chosen on purpose); models (You don't need another database (yet)); extensions (Extensions worth knowing); B-tree (The B-tree does the heavy lifting); more indexes (Beyond the B-tree); EXPLAIN (Read the plan, not the clock); planner (The planner is guessing); plans (The cheapest plan wins); queries (Queries that age well); search (Search without a search engine); functions (Code in the database); concurrency (Everyone waits in line); migrations (Change the schema, keep the site); loading (Load it fast); connections (Connections aren't free); benchmarking (Measure honestly); configuration (The settings that matter); observability (Watch it run); backups (An untested backup is a rumor); security (Trust no tenant); managed (Someone else runs the box); providers (Pick a provider you can leave); playbook (Fix the work, then the box); scale (Scale up before you scale out); replication (Copies of the truth); partitioning (Partition for the delete); sharding (Shard last); limits (Where Postgres loses).
PostgreSQL documentation
The PostgreSQL Global Development Group's manual, version 18 (/docs/18/) unless the entry says otherwise. It's the primary source for nearly every claim in the book, and the first place to look when a version changes.
- Additional Supplied Modules and Extensions. Cited in extensions.
- ALTER DEFAULT PRIVILEGES. Cited in security.
- ALTER TABLE. Cited in migrations, partitioning.
- amcheck. Cited in types, backups.
- Architectural Fundamentals. Cited in basics.
- Asynchronous Commit. Cited in WAL, ACID.
- auto_explain. Cited in EXPLAIN, functions.
- Backup and Restore. Cited in backups.
- BRIN Indexes. Cited in more indexes.
- B-Tree Indexes. Cited in HOT, B-tree.
- Collation Support. Cited in types.
- Concurrency Control. Cited in not MySQL.
- Concurrency Control: introduction. Cited in MVCC.
- Constraints. Cited in relationships.
- Continuous Archiving and Point-in-Time Recovery (PITR). Cited in backups.
- Controlling Text Search. Cited in search, limits.
- COPY. Cited in loading.
- CREATE FUNCTION. Cited in security.
- CREATE INDEX (including CONCURRENTLY). Cited in migrations.
- CREATE POLICY. Cited in security.
- CREATE STATISTICS. Cited in planner.
- CREATE TABLE. Cited in relationships, scale, partitioning.
- CREATE TRIGGER. Cited in functions.
- Database Page Layout. Cited in storage.
- Database Roles. Cited in basics.
- Data Types. Cited in types.
- Date/Time Functions and Operators. Cited in types.
- EXPLAIN. Cited in EXPLAIN.
- Explicit Locking. Cited in concurrency.
- Free Space Map. Cited in storage.
- Full Text Search. Cited in search.
- Function Volatility Categories. Cited in functions.
- GIN Indexes. Cited in more indexes.
- GiST Indexes. Cited in more indexes.
- Hash Indexes. Cited in more indexes.
- Heap-Only Tuples (HOT). Cited in HOT.
- Hot Standby. Cited in replication.
- How Connections Are Established. Cited in connections.
- How the Planner Uses Statistics. Cited in planner.
- Indexes. Cited in B-tree.
- Index Types. Cited in more indexes.
- INSERT (including ON CONFLICT). Cited in queries, loading.
- JSON Functions and Operators. Cited in models.
- JSON Types. Cited in models, more indexes.
- Just-in-Time Compilation (JIT). Cited in plans.
- Large Objects: introduction. Cited in limits.
- Lexical Structure. Cited in not MySQL.
- LIMIT and OFFSET. Cited in queries.
- Logical Decoding. Cited in limits.
- Logical Replication. Cited in providers, replication.
- Log-Shipping Standby Servers. Cited in replication.
- ltree. Cited in models.
- Managing Kernel Resources. Cited in configuration.
- Materialized Views. Cited in scale.
- MERGE. Cited in queries.
- NOTIFY. Cited in models.
- Operator Classes and Operator Families. Cited in more indexes.
- Packaging Related Objects into an Extension. Cited in extensions.
- pageinspect. Cited in storage.
- Parallel Query. Cited in plans.
- Performance Tips. Cited in playbook.
- pg_basebackup. Cited in backups.
- pgbench. Cited in benchmarking, playbook.
- pg_buffercache. Cited in buffers.
- pg_combinebackup. Cited in backups.
- pg_dump. Cited in benchmarking, backups, providers.
- pg_prewarm. Cited in buffers.
- pg_rewind. Cited in replication.
- pg_stat_statements. Cited in benchmarking, observability, playbook, scale.
- pgstattuple. Cited in vacuum.
- pg_test_fsync. Cited in latency.
- pg_trgm. Cited in more indexes.
- pg_upgrade. Cited in backups.
- Planner/Optimizer. Cited in plans.
- PL/pgSQL: Transaction Management. Cited in functions.
- PL/pgSQL under the Hood. Cited in functions.
- Populating a Database. Cited in loading.
- postgres_fdw. Cited in sharding.
- PostgreSQL 18.6 release notes. Cited in extensions.
- PostgreSQL 18 documentation. Cited in preface.
- PostgreSQL 18 release notes. 2025. Cited in preface, B-tree.
- PostgreSQL 19 Beta 4 Released!. 2026. Cited in providers.
- PostgreSQL Limits. Cited in limits.
- Predefined Roles. Cited in managed.
- PREPARE. Cited in planner.
- Privileges. Cited in security.
- Progress Reporting. Cited in observability.
- psql. Cited in preface, basics.
- REFRESH MATERIALIZED VIEW. Cited in scale.
- REINDEX. Cited in migrations.
- Reliability. Cited in latency, ACID.
- REPACK (development version). Cited in extensions.
- Routine Vacuuming. Cited in MVCC, vacuum, concurrency, playbook.
- Row Security Policies. Cited in security.
- Schemas. Cited in basics.
- Sequence Manipulation Functions. Cited in keys.
- Serialization Failure Handling. Cited in concurrency.
- Server Configuration: Client Connection Defaults. Cited in connections.
- Server Configuration: Connections and Authentication. Cited in connections.
- Server Configuration: Error Reporting and Logging. Cited in configuration.
- Server Configuration: Query Planning. Cited in planner, playbook, partitioning.
- Server Configuration: Replication. Cited in replication.
- Server Configuration: Resource Consumption. Cited in latency, buffers, configuration.
- Server Configuration: Vacuuming. Cited in vacuum.
- Server Configuration: Write Ahead Log. Cited in WAL, loading, configuration.
- Set Returning Functions. Cited in preface.
- Setting Parameters. Cited in configuration.
- Sorting Rows (ORDER BY). Cited in not MySQL.
- SP-GiST Indexes. Cited in more indexes.
- Statistics Used by the Planner. Cited in planner.
- Subquery Expressions. Cited in queries.
- Subtransactions. Cited in concurrency.
- System Catalogs. Cited in basics.
- Table Partitioning. Cited in scale, partitioning.
- The Cumulative Statistics System. Cited in observability, playbook, scale.
- The pg_hba.conf File. Cited in security.
- The SQL Language. Cited in basics.
- TOAST. Cited in storage.
- Transaction Isolation. Cited in MVCC, ACID, concurrency.
- Triggers. Cited in functions.
- TRUNCATE. Cited in MVCC.
- User-Defined Functions. Cited in functions.
- Using EXPLAIN. Cited in EXPLAIN.
- UUID Functions. Cited in keys.
- Versioning Policy. Cited in preface, providers.
- Viewing Locks. Cited in observability.
- Visibility Map. Cited in storage.
- WAL Configuration. Cited in WAL.
- WITH Queries (Common Table Expressions). Cited in models.
- Write-Ahead Logging (WAL). Cited in WAL.
PostgreSQL source, commits, and wiki
Once the manual has told you what, the READMEs tell you why, in the words of the people who built it. This section holds those design notes, two commits, and the community wiki, all from the PostgreSQL project. Source links point at the master branch, which moves.
- A Guide to CVE-2018-1058: Protect Your Search Path. PostgreSQL wiki. Cited in security.
- BRIN access method (src/backend/access/brin/brin.c). PostgreSQL source. Cited in more indexes.
- BRIN design notes (src/backend/access/brin/README). PostgreSQL source. Cited in more indexes.
- B-tree implementation (src/backend/access/nbtree/README). PostgreSQL source. Cited in B-tree.
- Buffer manager design notes (src/backend/storage/buffer/README). PostgreSQL source. Cited in buffers.
- Count estimate. PostgreSQL wiki. Cited in queries.
- Don't Do This. PostgreSQL wiki. Cited in types.
- Fsync Errors. PostgreSQL wiki. Cited in ACID.
- Heap-only tuples (src/backend/access/heap/README.HOT). PostgreSQL source. Cited in HOT.
- Hint Bits. PostgreSQL wiki. Cited in MVCC.
- Increase the number of fast-path lock slots (commit c4d5cb71d). Tomas Vondra, 2024. Cited in concurrency.
- Inlining of SQL functions. PostgreSQL wiki. Cited in functions.
- Lazy vacuum (src/backend/access/heap/vacuumlazy.c). PostgreSQL source. Cited in vacuum.
- Locale data changes. PostgreSQL wiki. Cited in types.
- Lock manager design notes (src/backend/storage/lmgr/README). PostgreSQL source. Cited in concurrency.
- Memory context design notes (src/backend/utils/mmgr/README). PostgreSQL source. Cited in buffers.
- Number Of Database Connections. PostgreSQL wiki. Cited in connections.
- OptimizerHintsDiscussion. PostgreSQL wiki. Cited in planner.
- Row locking and MultiXacts (src/backend/access/heap/README.tuplock). PostgreSQL source. Cited in MVCC.
- Slow Counting. PostgreSQL wiki. Cited in queries.
- SSI. PostgreSQL wiki. Cited in ACID.
- Transaction system and WAL (src/backend/access/transam/README). PostgreSQL source. Cited in WAL.
- Use ExtendBufferedRelBy() to extend tables more efficiently (commit 00d1e02be). Andres Freund, 2023. Cited in concurrency.
Papers
The research behind the mechanisms: write-ahead recovery, isolation, B-link trees, cost-based planning, and the indexes behind vector and hybrid search. You don't need them to run Postgres. Read one when a chapter leaves you asking where a mechanism came from.
- A Critique of ANSI SQL Isolation Levels. Hal Berenson, Phil Bernstein, Jim Gray, Jim Melton, Elizabeth O'Neil, and Patrick O'Neil, SIGMOD, 1995. Cited in ACID.
- A Simple Guide to Five Normal Forms in Relational Database Theory. William Kent, Communications of the ACM, 1983. Cited in relationships.
- Access Path Selection in a Relational Database Management System. P. Griffiths Selinger, M. M. Astrahan, D. D. Chamberlin, R. A. Lorie, and T. G. Price, SIGMOD, 1979. Cited in plans.
- ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging. C. Mohan, Don Haderle, Bruce Lindsay, Hamid Pirahesh, and Peter Schwarz, ACM TODS, 1992. Cited in WAL.
- Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs. Yu. A. Malkov and D. A. Yashunin, arXiv, 2016. Cited in search.
- Efficient Locking for Concurrent Operations on B-Trees. Philip L. Lehman and S. Bing Yao, ACM TODS, 1981. Cited in B-tree.
- How Good Are Query Optimizers, Really?. Viktor Leis, Andrey Gubichev, Atanas Mirchev, Peter Boncz, Alfons Kemper, and Thomas Neumann, PVLDB, 2015. Cited in planner, plans.
- Reciprocal Rank Fusion outperforms Condorcet and individual Rank Learning Methods. Gordon V. Cormack, Charles L. A. Clarke, and Stefan Büttcher, SIGIR, 2009. Cited in search.
- Serializable Snapshot Isolation in PostgreSQL. Dan R. K. Ports and Kevin Grittner, PVLDB, 2012. Cited in ACID.
- What Goes Around Comes Around... And Around.... Michael Stonebraker and Andrew Pavlo, SIGMOD Record, 2024. Cited in models, limits.
Books
Two long-form explanations, both free to read online. They're the best companions to the storage, MVCC, and B-tree chapters when you want the same ideas drawn another way.
- The Internals of PostgreSQL. Hironobu Suzuki, 2015 to present. Heap Table Structure, Concurrency Control. Cited in storage, MVCC.
- Use The Index, Luke: Anatomy of an SQL Index. Markus Winand. Cited in B-tree.
Specifications and RFCs
The standards behind the book's advice on identifiers and access control.
- Insecure Direct Object Reference Prevention Cheat Sheet. OWASP. Cited in keys.
- RFC 9562: Universally Unique IDentifiers (UUIDs). K. Davis, B. Peabody, and P. Leach, IETF, 2024. Cited in keys.
- TypeID specification. Jetify. Cited in keys.
- ULID specification. ulid project. Cited in keys.
Vendor and project documentation
Vendor pages change often, so check the page again before you rely on a price, a limit, or a version. The chapters date the facts they quote, mostly as of October 2026. Entries are grouped by source, with each cited page linked.
- About Pool Sizing. Brett Wooldridge, HikariCP wiki. Cited in connections.
- Aiven for PostgreSQL documentation. Aiven. Aiven service and tool version lifecycle, High availability, Aiven for PostgreSQL backups, Pricing. Cited in providers.
- AlloyDB for PostgreSQL documentation. Google Cloud. Manage PostgreSQL users with built-in authentication, Supported database extensions, Improve query performance using query insights, AlloyDB high availability overview, Pricing, AlloyDB overview, About the AlloyDB columnar engine, Database version policies, Data backup and recovery overview, AlloyDB Omni overview, Export a DMP file. Cited in managed, providers.
- Amazon Aurora User Guide and Aurora PostgreSQL release notes. AWS. Amazon Aurora PostgreSQL parameters, Extensions supported, Amazon Aurora storage, Replication with Amazon Aurora, High availability for Amazon Aurora, Amazon Aurora DB clusters, Release calendars, Using Amazon Aurora Global Database, How Aurora serverless works, Scaling to Zero ACUs with automatic pause and resume, Overview of PostgreSQL logical replication, Aurora PostgreSQL Limitless Database requirements and considerations, Amazon Aurora PostgreSQL Limitless Database updates, Aurora PostgreSQL Limitless Database architecture. Cited in managed, providers, sharding.
- Amazon EBS, EC2, S3, and Aurora DSQL documentation. AWS. Amazon EBS volume types, Amazon EBS General Purpose SSD volumes, Amazon EBS-optimized instance types, Specifications for Amazon EC2 storage optimized instances, Data persistence for Amazon EC2 instance store volumes, Migrating from PostgreSQL to Aurora DSQL, Uploading objects. Cited in latency, providers, limits.
- Amazon RDS User Guide and RDS for PostgreSQL release notes. AWS. Understanding the rds_superuser role, Overview of parameter groups, Extension versions, Supported PostgreSQL extension versions, Amazon RDS DB instance storage, Amazon CloudWatch metrics, IO:DataFileRead, Database load, Avoiding pinning an RDS Proxy, Backup retention period, Restoring a DB instance to a specified time, Introduction to backups, Restoring to a DB instance, Upgrades of the RDS for PostgreSQL DB engine, PostgreSQL replication methods for blue/green deployments, Limitations and considerations blue/green deployments, Failing over a Multi-AZ DB instance, Failing over a Multi-AZ DB cluster, Parameters for logging in RDS for PostgreSQL, Improving query performance, Release calendars, Working with the Database Preview environment, Multi-AZ DB cluster deployments, Importing data into PostgreSQL on Amazon RDS, Amazon RDS Extended Support. Cited in managed, providers.
- Apache AGE. Apache Software Foundation. Repository, Board meeting minutes. Cited in extensions.
- Apache Kafka documentation. Apache Software Foundation. Introduction, Topic Configs. Cited in limits.
- AWS pricing and announcements. AWS. Amazon RDS pricing, Amazon RDS for PostgreSQL pricing, Amazon Aurora PostgreSQL Limitless Database is now generally available (2024). Cited in managed, providers, sharding.
- Azure Database for PostgreSQL and Azure HorizonDB documentation. Microsoft. Access Management, Load Libraries, List of Extensions and Modules by Name, Allow Extensions, Storage options, Monitor Using Metrics and Logs, Query Store, PgBouncer, Backup and Restore, Major Version Upgrades, High Availability, What is Azure Database for PostgreSQL?, Compute Options, Supported versions of PostgreSQL, Read replicas, Elastic Clusters, Extended Support, Pricing, What Is Azure HorizonDB?. Cited in managed, providers.
- Barman. Barman project. Cited in backups, providers.
- Citus. Citus Data. Repository, Columnar storage. Cited in sharding, limits.
- ClickHouse documentation. ClickHouse. CREATE TABLE, A practical introduction to primary indexes, Transactional (ACID) support, Using JOINs. Cited in limits.
- Cloud SQL for PostgreSQL documentation. Google Cloud. About PostgreSQL users and roles, Configure database flags, Configure PostgreSQL extensions, Choose a storage option, Use query insights to improve query performance, Managed Connection Pooling overview, Perform point-in-time recovery (PITR), Cloud SQL backups overview, Upgrade the database major version in-place, About high availability, Cloud SQL overview, Database versions and version policies, Cloud SQL editions overview, Cloud SQL for PostgreSQL features, Extended support for Cloud SQL, Pricing. Cited in managed, providers.
- CockroachDB documentation. Cockroach Labs. PostgreSQL Compatibility, Replication Layer. Cited in sharding, limits.
- Compute Engine and Spanner documentation. Google Cloud. About Local SSD disks, Spanner: TrueTime and external consistency. Cited in providers, limits.
- Crunchy Bridge documentation. Crunchy Data. PostgreSQL versions, User management, High availability, Plans and pricing. Cited in providers.
- Debezium connector for PostgreSQL. Debezium project. Cited in limits.
- DigitalOcean Managed PostgreSQL documentation. DigitalOcean. PostgreSQL Limits, PostgreSQL Features. Cited in providers.
- DuckDB documentation. DuckDB. Storage Versions and Format, Concurrency. Cited in limits.
- EDB documentation. EnterpriseDB. EDB Postgres AI Cloud Service, Enterprise Postgres (Oracle Compatible) v18, Pricing and billing. Cited in providers.
- explain.dalibo.com. Dalibo. Cited in EXPLAIN.
- explain.depesz.com. Hubert Lubaczewski. Cited in EXPLAIN.
- Fly.io Postgres documentation. Fly.io. Managed Postgres, Unmanaged Postgres. Cited in providers.
- Hermitage. Martin Kleppmann and contributors. Cited in not MySQL.
- Heroku Dev Center: Heroku Postgres. Heroku. Choosing the Right Heroku Postgres Plan, Heroku Postgres Advanced (Limited GA), Heroku Postgres Version Support, Heroku Postgres Credentials, High Availability. Cited in providers.
- HypoPG. HypoPG project. Repository, Documentation. Cited in extensions.
- KSUID. Segment. Cited in keys.
- Kubernetes operators for PostgreSQL. CloudNativePG, CloudNativePG at the CNCF, Crunchy Postgres for Kubernetes, Zalando postgres-operator, StackGres, Percona Operator for PostgreSQL. Cited in providers.
- Lead. PlanetScale. Cited in search.
- Linux kernel documentation. Linux kernel. Control Group v2, Documentation for /proc/sys/vm. Cited in configuration.
- MySQL 8.4 Reference Manual. Oracle. Clustered and Secondary Indexes, InnoDB Multi-Versioning, Transaction Isolation Levels. Cited in not MySQL.
- NanoID. Andrey Sitnik. Cited in keys.
- Neon documentation. Neon. Manage roles, Postgres extensions, The lakebase architecture, Scale to Zero, Connection pooling, Postgres version support, Branching, Logical replication, Neon plans. Cited in managed, providers.
- Nile documentation. Nile. Architecture of Nile Postgres, Postgres Compatibility. Cited in providers.
- ParadeDB architecture. ParadeDB. Cited in search.
- Patroni. Patroni project. Cited in providers, replication.
- pgAudit. pgAudit project. Cited in extensions, security.
- pgBackRest. pgBackRest project. Home, User Guide, News. Cited in backups, providers.
- PgBouncer documentation. PgBouncer project. Features, Configuration, Changelog. Cited in connections.
- pg_cron. Citus Data. Cited in extensions.
- PgDog. PgDog project. Cited in sharding.
- pg_duckdb. DuckDB project. Cited in extensions, limits.
- pg_hint_plan. NTT OSS Center. Cited in extensions, plans.
- pg_lake. Snowflake Labs. Cited in extensions.
- pg_mooncake. Mooncake Labs. Cited in extensions.
- pgmq. pgmq project. Cited in extensions.
- pg_partman. pg_partman project. Cited in extensions, partitioning.
- pg_repack. reorg project. Repository, Documentation. Cited in extensions.
- pgroll. Xata. Cited in migrations.
- PGroonga. PGroonga project. Cited in extensions.
- pg_search. ParadeDB. Cited in search.
- pg_squeeze. CYBERTEC. Cited in extensions.
- pg_textsearch. Tiger Data. Cited in search.
- pgvector. pgvector project. Cited in search, limits.
- pg_wait_sampling. Postgres Professional. Cited in observability.
- PlanetScale documentation, benchmarks, and pricing. PlanetScale. PlanetScale benchmarks, PlanetScale vs Amazon Aurora benchmarks, PlanetScale vs Neon / Lakebase benchmarks, PlanetScale Postgres architecture, PlanetScale vs Xata benchmarks, Supported versions, Logical replication and Change Data Capture (CDC), Point-in-time recovery, Horizontal sharding for Postgres, Pricing, Query planning. Cited in providers, sharding.
- PLJS. plv8 project. Cited in extensions.
- PL/v8. plv8 project. Cited in extensions.
- PostGIS. PostGIS project. Home, Spatial Queries, PostGIS_Extensions_Upgrade, License. Cited in extensions.
- PostgreSQL Anonymizer. PostgreSQL Anonymizer project. Cited in benchmarking.
- Prisma Postgres FAQ. Prisma. Cited in providers.
- Railway documentation. Railway. Databases, Upgrading PostgreSQL to High Availability, Backups. Cited in providers.
- Render documentation. Render. Upgrading Your Render Postgres Version, High Availability, Render Postgres Recovery and Backups, Deploy for Free. Cited in providers.
- Similarity settings. Elastic. Cited in limits.
- Snowflake (2010 release). Twitter. Cited in keys.
- Snowflake Postgres documentation. Snowflake. Snowflake Postgres, Snowflake Postgres Roles. Cited in providers.
- Sqids. Sqids project. Cited in keys.
- Squawk. Squawk project. Cited in migrations.
- strong_migrations. Andrew Kane. Cited in migrations.
- Supabase documentation. Supabase. Postgres Roles, Postgres Extensions Overview, Compute and Disk, Connect to your database, Architecture, Upgrading, Replicate to another Postgres database using Logical Replication, Branching, OrioleDB Overview, Pricing. Cited in managed, providers.
- sysbench-tpcc. Percona. Cited in providers.
- Tiger Data documentation. Tiger Data. Maintenance and upgrades, Manage data security in your service, Pricing. Cited in providers.
- TimescaleDB. Tiger Data. Repository, Apache 2.0 license, Timescale License, Compare TimescaleDB editions. Cited in extensions.
- Valkey documentation. Valkey project. Introduction, Persistence. Cited in limits.
- VectorChord-bm25. VectorChord project. Cited in search.
- Volumes. Kubernetes. Cited in configuration.
- WAL-G. WAL-G project. Cited in backups, providers.
- wrk2. Gil Tene. Cited in benchmarking.
- Xata documentation and pricing. Xata. Branching, Extensions, Pricing. Cited in providers.
- YugabyteDB Query Layer. Yugabyte. Cited in limits.
Reference works
- German tank problem. Wikipedia, n.d. Cited in keys.
Articles, talks, and postmortems
Engineering posts, talks, announcements, and incident write-ups, by author or publisher. Read the postmortems first: other teams' outages, told by the people who had them, are cheaper than your own.
- Abusing SECURITY DEFINER functions. Laurenz Albe, CYBERTEC, 2019. Cited in security.
- AlloyDB for PostgreSQL intelligent scalable storage. Google Cloud blog, 2022. Cited in managed.
- An Update on Heroku. Heroku, 2026. Cited in providers.
- Analyzing the Limits of Connection Scalability in Postgres. Andres Freund, Microsoft, 2020. Cited in connections.
- Benchmarking Postgres. Ben Dicken, PlanetScale, 2025. Cited in providers.
- Case-insensitive pattern matching in PostgreSQL. Laurenz Albe, CYBERTEC, 2022. Cited in types.
- Databricks Agrees to Acquire Neon to Deliver Serverless Postgres for Developers + AI Agents. Databricks, 2025. Cited in providers.
- Designing APIs for humans: Object IDs. Paul Asjes, Stripe, 2022. Cited in keys.
- HOT updates in PostgreSQL for better performance. Laurenz Albe, CYBERTEC, 2020. Cited in HOT.
- How NOT to Measure Latency. Gil Tene, QCon San Francisco, 2015. Cited in benchmarking.
- How To Correct and Identify Indexes Affected by the GNU C 2.28 Update. David Thomas, Crunchy Data, 2019. Cited in types.
- Introducing TIN: full-text search for Postgres. PlanetScale, 2026. Cited in search.
- Meet the Team Behind Snowflake Postgres. Elizabeth Garrett Christensen, Snowflake, 2025. Cited in providers.
- Numbers Every Programmer Should Know By Year. Colin Scott, n.d. Cited in latency.
- On Uber's Choice of Databases. Markus Winand, 2016. Cited in not MySQL.
- PlanetScale for Postgres is now GA. PlanetScale, 2025. Cited in providers.
- Postgres LISTEN/NOTIFY does not scale. Recall.ai, 2025. Cited in models.
- Postmortem of database outage of January 31. GitLab, 2017. Cited in backups.
- Quack: The DuckDB Client-Server Protocol. DuckDB, 2026. Cited in limits.
- Reaction to the PlanetScale PostgreSQL benchmarks. Xata, 2025. Cited in providers.
- Separation of storage and compute without a performance tradeoff. Neon, 2025. Cited in providers.
- Snowflake Acquires Crunchy Data to Bring Enterprise Ready Postgres Offering to the AI Data Cloud. Snowflake, 2025. Cited in providers.
- Speed Without Sacrifice: Building the Modern PostgreSQL for the Analytical and Agentic Era. Ajay Kulkarni and Mike Freedman, Tiger Data, 2025. Cited in providers.
- The Part of PostgreSQL We Hate the Most. Andy Pavlo and Bohan Zhang, 2023. Cited in HOT.
- The USE Method. Brendan Gregg, n.d. Cited in observability.
- Thoughts on Uber's List of Postgres Limitations. Simon Riggs, EDB, 2016. Cited in not MySQL.
- Transaction ID Wraparound in Postgres. Sentry, 2015. Cited in vacuum.
- Uber's move away from PostgreSQL. Robert Haas, 2016. Cited in not MySQL.
- VACUUM won't remove dead rows: 4 reasons why. Laurenz Albe, CYBERTEC, 2018. Cited in vacuum.
- We need tool support for keyset pagination. Markus Winand, 2014. Cited in queries.
- What We Learned from the Recent Mandrill Outage. Mailchimp, 2019. Cited in vacuum.
- Why Uber Engineering Switched from Postgres to MySQL. Evan Klitzke, Uber, 2016. Cited in not MySQL.
- Why we spent the last month eliminating PostgreSQL subtransactions. GitLab, 2021. Cited in concurrency.
- Zero-downtime Postgres migrations: the hard parts. Chris Sinjakli, GoCardless, n.d. Cited in migrations.
- Zero-downtime Postgres schema migrations need this: lock_timeout and retries. Nikolay Samokhvalov, PostgresAI, 2021. Cited in migrations.