The following bug has been logged online:
Bug reference: 2852
Logged by: Pavel Golub
Email address: pavel(at)microolap(dot)com
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