identifier will be truncated

Started by Joao Ferreira gmailabout 5 years ago3 messagesgeneral
Jump to latest
#1Joao Ferreira gmail
joao.miguel.c.ferreira@gmail.com

Hello all,

I'm running unit/integration tests on a pg based application. I recently
started getting the following indication on the test suite pg client:

NOTICE: identifier
"y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_liq" will be
truncated to
"y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_li"

Please advise on what I should do about it or if this might be a potential
problem that I should address.

Thank you
Joao

#2Adrian Klaver
adrian.klaver@aklaver.com
In reply to: Joao Ferreira gmail (#1)
Re: identifier will be truncated

On 2/8/21 8:39 AM, Joao Miguel Ferreira wrote:

Hello all,

I'm running unit/integration tests on a pg based application. I recently
started getting the following indication on the test suite pg client:

NOTICE:  identifier
"y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_liq" will
be truncated to
"y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_li"

Please advise on what I should do about it or if this might be a
potential problem that I should address.

https://www.postgresql.org/docs/12/sql-syntax-lexical.html

"The system uses no more than NAMEDATALEN-1 bytes of an identifier;
longer names can be written in commands, but they will be truncated. By
default, NAMEDATALEN is 64 so the maximum identifier length is 63 bytes.
If this limit is problematic, it can be raised by changing the
NAMEDATALEN constant in src/include/pg_config_manual.h."

Thank you
Joao

--
Adrian Klaver
adrian.klaver@aklaver.com

#3Paul Förster
paul.foerster@gmail.com
In reply to: Joao Ferreira gmail (#1)
Re: identifier will be truncated

Hi Joao,

On 08. Feb, 2021, at 17:39, Joao Miguel Ferreira <joao.miguel.c.ferreira@gmail.com> wrote:

NOTICE: identifier "y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_liq" will be truncated to "y1972_1004_vat_periodic_declaration_suppliers_lines_dupl_c24_li"

Please advise on what I should do about it or if this might be a potential problem that I should address.

this is an indication that your object name is longer than 63 characters, which is a hard coded limit.

You have two options:

a) compile the PostgreSQL software from source and increase that limit (which I wouldn't recommend), or

b) use shorter object names (table-, view-, sequence-, column-, whatever names) with a maximum length of 63 characters.

Cheers,
Paul