Hello, Bruce.

Thanks for an answer. Are there any thoughts to insert check into
PostgreSQL code or we (developers) must take into account that UDT
with leading underscore may exist?

You wrote:

BM> I have applied the following documentaiton patch that states a leading
BM> underscore "shouldn't" be used, rather than prohibited.

BM> ---------------------------------------------------------------------------

BM> Pavel Golub wrote:
>> 
>> The following bug has been logged online:
>> 
>> Bug reference:      2852
>> Logged by:          Pavel Golub
>> Email address:      [EMAIL PROTECTED]
>> PostgreSQL version: 8.x
>> Operating system:   Windows XP
>> Description:        User-defined type name begins with the underscore
>> character (_) can be created
>> Details: 
>> 
>> Hello, pgsql-bugs.
>> 
>> Documentation says:
>> "User-defined type names cannot begin with the
>> underscore character (_) and can only be 62
>> characters long (or in general NAMEDATALEN - 2,
>> rather than the NAMEDATALEN - 1 characters
>> allowed for other names). Type names beginning
>> with underscore are reserved for
>> internally-created array type names. "
>> 
>> However, such SQL may be executed:
>> 
>> CREATE TYPE _my AS (id int4, id2 int4);
>> 
>> And then server treats it as an array type. Thus next SQL will be executed
>> too:
>> 
>> CREATE TABLE my_table(
>> my_arr my[]
>> );
>> 
>> Checked on PostgreSQL versions (Windows XP):
>> 8.0.6
>> 8.1.0
>> 8.2.0
>> 
>> ---------------------------(end of broadcast)---------------------------
>> TIP 4: Have you searched our list archives?
>> 
>>                http://archives.postgresql.org




-- 
With best wishes,
 Pavel                          mailto:[EMAIL PROTECTED]


---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to