Re: Cannot create a type in pg_catalog

From: Dave Page <dpage(at)postgresql(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
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:36:06
Message-ID: 46CDA966.8080704@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Tom Lane wrote:
> 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.

Well, yeah, that does seem like a good foot-guard. Perhaps if/when we
get a separate truncate privilege would be a more appropriate time to
look at cleaning it up.

Regards, Dave.

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2007-08-23 16:17:23 Re: BUG #3571: call to decrypt causes segfault
Previous Message Tom Lane 2007-08-23 15:22:54 Re: Cannot create a type in pg_catalog