select open change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

SQLSTATE / CLASS 53 · INSUFFICIENT RESOURCES

configuration_limit_exceeded

SQLSTATE
53400
Condition name
configuration_limit_exceeded
Class
Insufficient Resources
Source macro
ERRCODE_CONFIGURATION_LIMIT_EXCEEDED
Evidence
Source path confirmed
Analysis & operational context

English SQLSTATE atlas: authored explanations and source/runtime evidence are separate from the manual definitions. View source ↗

<h1>53400</h1>

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.

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.

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.

Source evidence

Evidence belongs to the frozen source and runtime versions listed here. It is not a runtime verification of the selected manual version.

53400 is configuration_limit_exceeded in SQLSTATE Class 53.

Method: Read fixed definition.

src.errcodes.18.6

The cited PostgreSQL 18.6 source paths support the representative resource and object-state mechanisms described.

Method: Read complete fixed source contexts.

Limits: Source confirmation is not natural runtime.

src.path.0 src.path.1 src.path.2

The locked catalogue records 53400 from 9.2.0; that boundary does not prove exact implementation introduction.

Method: Use catalogue boundary.

src.errcodes.18.6

Message templates

ERROR · message.0

Primary

too many background workers

Hint

Consider increasing the configuration parameter "%s".
ERROR · message.1

Primary

out of logical replication worker slots

Hint

You might need to increase "%s".
ERROR · message.2

Primary

could not find free replication state slot for replication origin with ID %d

Hint

Increase "max_active_replication_origins" and try again.

Reproduction & repair cases

No reproduction case is attached to this condition.

Recorded runtime evidence

No runtime observation is attached to this entry.

Version history 1
  1. PG 9.1 → 9.2added

Definition snapshot: english-manuals:8154f0159b3b1571ec217972438… · English manual source