Database

PostgreSQL

PostgreSQL internals that decide production behaviour - MVCC and XID wraparound, autovacuum thresholds, work_mem, WAL durability, indexes, replication.

Read the PostgreSQL guide

Concepts it implements

MVCC

Readers see a consistent snapshot without blocking writers, because an update creates a new row version rather than overwriting the old one.

Bloat and vacuum

Dead row versions left by MVCC occupy space until a background process reclaims them; if it falls behind, tables and indexes grow without the data growing.

Transaction ID wraparound

PostgreSQL transaction IDs are 32-bit and wrap around, so rows must be frozen before the counter laps them or data would appear to vanish.

Isolation levels

The contract for which concurrency anomalies a transaction may observe, traded against how much concurrency the engine allows.

Replication lag

The delay between a write committing on the primary and becoming visible on a replica.

Retrieval-augmented generation

Relevant documents are retrieved at query time and supplied as context, so the model answers from evidence rather than parametric memory.

Vector search

Text or images are embedded as vectors and compared by distance, so results are ranked by similarity rather than keyword match.

Write amplification

One logical write causes several physical writes - to the log, the data pages, and every affected index.

Schema

The structure that defines how data is organised in a database: tables, columns, data types, constraints, relationships, and indexes.

Normalisation

Organising tables so that each fact is stored once, reducing redundancy at the cost of more joins.

Index

A data structure maintained alongside a table that makes lookups by specific columns faster, at the cost of slower writes and additional storage.

Stored procedure

A named block of SQL (or procedural code) stored in the database and executed on the server, avoiding the round-trip cost of sending each statement from the application.

Primary key

A column or set of columns that uniquely identifies every row in a table, enforced by a unique index and a NOT NULL constraint.

Foreign key

A constraint that links a column in one table to the primary key of another, enforcing referential integrity so that orphan rows cannot exist.

Transaction

A sequence of operations that either all succeed (commit) or all fail (rollback), guaranteeing that the database moves from one consistent state to another.

Trigger

Code that the database executes automatically when a specific event occurs on a table - typically an INSERT, UPDATE, or DELETE.

View

A named query stored in the database that behaves like a virtual table - it does not hold data itself but runs its defining query each time it is read.

Where PostgreSQL sits

How this component relates to the rest of the stack. Items without a link are not covered here yet.

Depends on

Must be present for this to run

Deployed with

Commonly run alongside

Alternatives

Solves a similar problem differently

PostgreSQL release support

5 supported
ReleaseLatestReleasedEnd of lifeStatus
1818.6Sept 2025Nov 2030Supported
1717.11Sept 2024Nov 2029Supported
1616.15Sept 2023Nov 2028Supported
1515.19Oct 2022Nov 2027Supported
1414.24Sept 2021Nov 2026Supported
1313.23Sept 2020Nov 2025End of life
1212.22Oct 2019Nov 2024End of life
1111.22Oct 2018Nov 2023End of life

Data as of 2026-10-01 from endoflife.date. Refresh with node scripts/fetch-versions.mjs.