Configuration parameter

max_identifier_length — PostgreSQL configuration parameter

Category Preset Options

Reports the maximum identifier length.

At a glance

Property Value
Parameter max_identifier_length
Category Preset Options
Default NAMEDATALEN
Value type integer
Change scope Per-session (SET)
Available in PostgreSQL 12, 13, 14, 15, 16, 17, 18, 19 (added in 12)

What it does

Reports the maximum identifier length. It is determined as one less than the value of NAMEDATALEN when building the server. The default value of NAMEDATALEN is 64; therefore the default max_identifier_length is 63 bytes, which can be less than 63 characters when using multibyte encodings.

(Description quoted from the official PostgreSQL documentation.)

How to apply a change

Can be set per session with SET, per role/database with ALTER ROLE/DATABASE ... SET, or globally in postgresql.conf.

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

Tuning guidance

This is a preset, read-only parameter: it reports a value fixed when PostgreSQL was built or the cluster was initialized, and cannot be tuned at runtime. Read it to verify the server’s build or cluster configuration (for example when matching a replica or debugging a compatibility issue); there is no setting to adjust.

Reference

PostgreSQL documentation — max_identifier_length.

Keep going

Related & next steps

Was this helpful?

← All configuration parameters