ERROR: argument to pg_get_expr() must come from system catalogs

From: Dave Page <dpage(at)pgadmin(dot)org>
To: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: ERROR: argument to pg_get_expr() must come from system catalogs
Date: 2010-07-13 15:31:56
Message-ID: AANLkTilk5ZNJ_4wTMKCLJHFdEtAsJz3de6t3lhkCAT2i@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

We had a report of the above error from a pgAdmin user testing
1.12.0b3 with PG 9.0b3. The (highly simplified) query below works fine
as a superuser:

SELECT pg_get_expr(proargdefaults, 'pg_catalog.pg_class'::regclass)
FROM pg_proc pr
LEFT OUTER JOIN pg_description des ON des.objoid=pr.oid

Run as a regular user though, we get the error. If I remove the join,
it works fine as the normal user. This is in a database owned by the
regular user.

Am I missing something obvious, or is there a bug here? pg_get_expr is
used pretty extensively in pgAdmin, so we're obviously keen to ensure
it works :-)

--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise Postgres Company

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thom Brown 2010-07-13 15:44:10 Re: ERROR: argument to pg_get_expr() must come from system catalogs
Previous Message Yeb Havinga 2010-07-13 15:21:07 Re: explain.c: why trace PlanState and Plan trees separately?