# X_DB_POOLER_SESSION_REQUIRED

## Means

this role needs one backend per session, and a transaction pooler gives it none

## Typical cause

ROLE=migrate or ROLE=replicator, or a step that applies a migration, under DATABASE_POOLER=transaction: session advisory locks and replication need one backend. Refused before a socket, because two migrators through a transaction pooler both read true from pg_try_advisory_lock

## Fix

`unset DATABASE_POOLER` for this role, and point its `DATABASE_URL` at the server's own port

[Entity and database](/error-codes#entity-and-database)
