Re: See the WHERE clause of a partial index

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Paul Jungwirth <pj(at)illuminatedcomputing(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: See the WHERE clause of a partial index
Date: 2012-09-14 20:06:02
Message-ID: 20595.1347653162@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Paul Jungwirth <pj(at)illuminatedcomputing(dot)com> writes:
> It'd be great to get just the WHERE clause if possible, although I can
> work around it if not. I couldn't find much documentation re
> pg_get_expr. Does this message mean I can't use it, or am I just doing
> something wrong?:

>>>>>> select pg_get_expr('{NULLTEST :arg {VAR :varno 1 :varattno 6
> :vartype 1114 :vartypmod -1 :varcollid 0 :varlevelsup 0 :varnoold 1
> :varoattno 6 :location 128} :nulltesttype 0 :argisrow false}',
> 223630);
> ERROR: cannot accept a value of type pg_node_tree
> LINE 1: select pg_get_expr('{NULLTEST :arg {VAR :varno 1 :varattno 6...

That's a security restriction (if you could pass random text to
pg_get_expr, you could probably crash it). If you feed the actual
pg_index.indpred column to it, that won't happen. I think the OID
argument will need to be the table not the index, but not 100% sure.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Paul Jungwirth 2012-09-14 20:12:04 Re: See the WHERE clause of a partial index
Previous Message Paul Jungwirth 2012-09-14 19:59:05 Re: See the WHERE clause of a partial index