tgl@xxxxxxxxxxxxx wrote: There must be a significant difference between this: select 'dog' and this: (select 'dog') This works fine: select length( (select 'dog') ) But without the doubled parentheses, it causes a syntax error. On the other hand, an extra pair of surrounding parentheses here select array( (values (17), (42)) ) while not necessary, *is* tolerated. All this started because I had wrongly assumed that "pg_terminate_backend()" would have the same character as "array()" by not being subject to the "execute" privilege — just as is the case for all SQL built-ins in Oracle database, like "length()". I have a better mental model now. Anyway, I know what to do in future. I'll simply look in pg_proc on a case-by-case basis. |