Re: (BUG ?) unprefixed oid -> ERROR: cache lookup failed for function - Mailing list pgsql-general

From Tom Lane
Subject Re: (BUG ?) unprefixed oid -> ERROR: cache lookup failed for function
Date
Msg-id 26831.1340294724@sss.pgh.pa.us
Whole thread Raw
In response to (BUG ?) unprefixed oid -> ERROR: cache lookup failed for function  ("Marc Mamin" <M.Mamin@intershop.de>)
List pgsql-general
"Marc Mamin" <M.Mamin@intershop.de> writes:
> following query is wrong in my understanding,  as it doesn't specify
> which oid to use (pg_proc or pg_roles ?)
>  but  it is accepted by the parser

> select pg_get_functiondef(oid)   -- should be
> pg_get_functiondef(pg_proc.oid)
>  from pg_proc join pg_roles
>      on ( pg_proc.proowner=pg_roles.oid )
>  LIMIT 1

The reason that happens is that pg_roles has an explicit oid column (ie,
oid is a regular not system column in the view) so that name takes
precedence over the system column available from pg_proc.  Having to
have an explicit oid column in pg_roles isn't very nice, because of
precisely this type of inconsistency, but since it's a view not a table
there's not a lot of alternatives.

            regards, tom lane

pgsql-general by date:

Previous
From: Kris Deugau
Date:
Subject: Conditional cast for eg sorting?
Next
From: Steve Atkins
Date:
Subject: Re: Conditional cast for eg sorting?