Re: Cannot create a type in pg_catalog

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Dave Page <dpage(at)postgresql(dot)org>
Cc: Alvaro Herrera <alvherre(at)commandprompt(dot)com>, pgsql-bugs(at)postgresql(dot)org
Subject: Re: Cannot create a type in pg_catalog
Date: 2007-08-23 15:22:54
Message-ID: 3093.1187882574@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Dave Page <dpage(at)postgresql(dot)org> writes:
> Tom Lane wrote:
>> The actual prohibition is on inserting a new pg_class row, which Dave's
>> command is trying to do because he's trying to create a composite type.

> If thats the case, then there's another inconsistency as I can insert a
> pg_class row manually without any problems:

Right, that's the end of it that's protected by rolcatupdate. The
check that is firing on you is in heap_create(), which is invoked
for composite types.

The whole allow_system_table_mods mechanism dates from Berkeley days,
and I guess you could argue that we might not need it anymore given
the improvements since then in ACL enforcement. I'm not in a big
hurry to rip it out though. Not being allowed to TRUNCATE pg_class
seems like a Good Thing to me.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Dave Page 2007-08-23 15:36:06 Re: Cannot create a type in pg_catalog
Previous Message Dave Page 2007-08-23 14:57:43 Re: Cannot create a type in pg_catalog