| 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: | Whole Thread | Raw Message | 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
| 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 |