Configuration parameter

pre_auth_delay — PostgreSQL configuration parameter

Category Developer Options Change scope Sighup

The amount of time to delay just after a new server process is forked, before it conducts the authentication procedure.

At a glance

Property Value
Parameter pre_auth_delay
Category Developer Options
Default (see documentation)
Value type integer
Change scope Reload (postgresql.conf, SIGHUP)
Available in PostgreSQL 12, 13, 14, 15, 16, 17, 18, 19 (added in 12)

What it does

The amount of time to delay just after a new server process is forked, before it conducts the authentication procedure. This is intended to give developers an opportunity to attach to the server process with a debugger to trace down misbehavior in authentication. If this value is specified without units, it is taken as seconds. A value of zero (the default) disables the delay. This parameter can only be set in the postgresql.conf file or on the server command line.

(Description quoted from the official PostgreSQL documentation.)

How to apply a change

Set it in postgresql.conf (or with ALTER SYSTEM) and reload with SELECT pg_reload_conf(); or pg_ctl reload — no restart needed.

Inspect the current value and source with SHOW pre_auth_delay; or SELECT name, setting, unit, context, source FROM pg_settings WHERE name = 'pre_auth_delay';.

Tuning guidance

This is a developer and debugging aid, not a performance knob. Leave it at the default in production; enable it only temporarily, on a non-production or carefully controlled system, while diagnosing a specific problem. Several options in this group add overhead, generate large volumes of log output, or can damage data if misused — turn them off again as soon as the investigation is done.

Reference

PostgreSQL documentation — pre_auth_delay.

Keep going

Related & next steps

Was this helpful?

← All configuration parameters