[patch] ENUM errdetail should mention bytes, not chars - Mailing list pgsql-hackers

From Ian Lawrence Barwick
Subject [patch] ENUM errdetail should mention bytes, not chars
Date
Msg-id CAB8KJ=itZEJ7C9BacTHSYgeUysH4xx8wDiOnyppnSLyn6-g+Bw@mail.gmail.com
Whole thread Raw
Responses Re: [patch] ENUM errdetail should mention bytes, not chars  (Julien Rouhaud <rjuju123@gmail.com>)
List pgsql-hackers
Hi

The errdetail emitted when creating/modifying an ENUM value is misleading:

    postgres=# CREATE TYPE enum_valtest AS ENUM (
                'foo',
                'ああああああああああああああああああああああ'
               );
    ERROR:  invalid enum label "ああああああああああああああああああああああ"
    DETAIL:  Labels must be 63 characters or less.

Attached trivial patch changes the message to:

    DETAIL:  Labels must be 63 bytes or less.

This matches the documentation, which states:

    The length of an enum value's textual label is limited by the NAMEDATALEN
    setting compiled into PostgreSQL; in standard builds this means at most
    63 bytes.

    https://www.postgresql.org/docs/current/datatype-enum.html

I don't see any particular need to backpatch this.


Regards

Ian Barwick


--
EnterpriseDB: https://www.enterprisedb.com

Attachment

pgsql-hackers by date:

Previous
From: "tsunakawa.takay@fujitsu.com"
Date:
Subject: RE: [POC] Fast COPY FROM command for the table with foreign partitions
Next
From: Julien Rouhaud
Date:
Subject: Re: [patch] ENUM errdetail should mention bytes, not chars