Skip to content

prefer-uuidv7-default

gen_random_uuid() emits a random UUIDv4 — use uuidv7() so keys are time-ordered.

Why

Random UUID keys scatter inserts across a B-tree, while time-ordered UUIDv7 values preserve index locality.

Fix

Use the PostgreSQL uuidv7() function for generated UUID defaults and values.

Examples

Before — flagged Random UUID default
migrations/001_calls.sql
CREATE TABLE
CALL (id UUID PRIMARY KEY DEFAULT gen_random_uuid());
After — preferred Time-ordered UUID default
migrations/001_calls.sql
CREATE TABLE
CALL (id UUID PRIMARY KEY DEFAULT uuidv7());