wellworn
traps · 3 served

pg-boss

pg-boss · latest 12.30.0 · MIT

Job queue on Postgres with SKIP LOCKED fetching, cron schedules, retries, and dead letter queues.

symptom and fix
major · >=12.30.0 · published · verified 2026-09-08
A `xmin_horizon` or `autovacuum_disabled` warning appears on the second maintenance pass after upgrading.
Vacuum monitoring is on by default in 12.30.0, so an installation whose horizon was already pinned starts warning right after the upgrade. Find what pins the horizon, an idle-in-transaction backend, a replication slot, a standby with hot_standby_feedback, or a prepared transaction, and release it. Setting `monitorVacuum: false` silences the warning and leaves the queue table bloating.
evidence
minor · >=12.30.0 · published · verified 2026-09-08
Node logs `[PGBOSS_DEP_FETCH_SORT] DeprecationWarning` for `priority` or `orderByCreatedOn`.
Both options are ignored as of 12.30.0 and will be rejected in the next major, because the fetch index now leads with the sort keys. Delete them. If you set `priority: false` to go faster, that was measured roughly 180x slower than the default once the index changed.
evidence
minor · >=12.30.0 · published · verified 2026-09-08
The first boot after upgrading runs a schema migration and rebuilds the fetch index.
Schema 40 adds two nullable columns and replaces `job_i5` with `job_i11`. The new index is built with CREATE INDEX CONCURRENTLY before the old one is dropped, so plan for the extra disk (about 15 MB to 19 MB at 500k jobs) and do not run two boots against the same database at once.
evidence

Sorted by severity. Your agent sees the subset that matches the version you have installed: traps(library: "pg-boss", version: "12.30.0").