Skip to content

53400 — configuration_limit_exceeded

Source-backed reference for PostgreSQL SQLSTATE 53400.

53400

At a glance

53400 reports that a configured or finite process slot is exhausted. Fixed paths cover background workers, logical-replication workers, and replication-origin state slots.

Field Value
SQLSTATE 53400
Condition configuration_limit_exceeded
Status active
Known present by 9.2.0
Locked snapshots 9.2.24, 9.3.25, 9.4.26, 9.5.25, 9.6.24, 10.23, 11.22, 12.22, 13.23, 14.24, 15.19, 16.15, 17.11, 18.6, 19beta3
Macros ERRCODE_CONFIGURATION_LIMIT_EXCEEDED
Aliases

Meaning

The source distinguishes too many background workers, no slot for a new autovacuum/background worker, no logical-replication worker slots, and replication-origin state limits. Hints name the parameter where the path can identify one; the current setting and workload determine whether increasing it is safe.

Diagnosis

Keep the exact component and parameter from the message. Inspect worker counts, active replication, origin IDs, slots, and server logs; distinguish a worker-slot limit (53400) from a generic resource failure (53000) or a statement complexity limit (54001).

Response

Remove or finish work that legitimately holds the slot, or raise the named configuration after checking process and memory capacity. Apply the change through the normal configuration/restart or reload procedure, then verify that the requested component can start. These fixed worker, launcher, and replication-origin paths can run in background backend processes rather than a client transaction; where an ERROR reaches an explicit client transaction, use ROLLBACK or ROLLBACK TO SAVEPOINT before retrying, and in autocommit retry only after the slot cause is corrected. Do not create workers merely to force this condition.

Versions

The locked catalogue records this condition from 9.2.0; cited background-worker and logical-replication paths are PostgreSQL 18.6 source. No slot exhaustion was run.

53000, 55000, 54001

Sources

src/backend/postmaster/bgworker.c#L1002-L1009

src/backend/replication/logical/launcher.c#L435-L438

src/backend/replication/logical/origin.c#L976-L980

The structured evidence record records fixed messages and the source/runtime boundary.