Re: [HACKERS] plpgsql keywords are hidden reserved words

2007-11-12 Thread Decibel!
On Nov 5, 2007, at 11:58 AM, John DeSoi wrote: Is there any feasibility to the idea of allowing pl/pgsql variables and parameters to be prefixed with a special character like '$'? I'm constantly adding prefixes like 'v_' because of conflicts with table or column names. It would be nice to ha

Re: [HACKERS] plpgsql keywords are hidden reserved words

2007-11-05 Thread John DeSoi
On Nov 5, 2007, at 10:20 AM, Tom Lane wrote: I don't see any fix for this that's reasonable to try to shoehorn into 8.3, but I think we really need to revisit the whole area of plpgsql variable substitution during 8.4. We could make this problem go away if variable substitution happened throug

Re: [HACKERS] plpgsql keywords are hidden reserved words

2007-11-05 Thread Tom Lane
John DeSoi <[EMAIL PROTECTED]> writes: > Is there any feasibility to the idea of allowing pl/pgsql variables > and parameters to be prefixed with a special character like '$'? I find this (a) really ugly, (b) incompatible with Oracle, which you'll recall is one of the main driving ideas for plpg

Re: [HACKERS] plpgsql keywords are hidden reserved words

2007-11-05 Thread Tom Lane
Gregory Stark <[EMAIL PROTECTED]> writes: > "Tom Lane" <[EMAIL PROTECTED]> writes: >> This works fine in 8.2. The reason it no longer works is that "query" >> is now a special token in the plpgsql lexer, and that means that it will >> never be substituted for by read_sql_construct(). So it's effe

Re: [HACKERS] plpgsql keywords are hidden reserved words

2007-11-05 Thread Gregory Stark
"Tom Lane" <[EMAIL PROTECTED]> writes: > I was somewhat bemused just now to find that this function stopped > working: > > regression=# create function estimate_rows(query text) returns float8 as $$ ... > This works fine in 8.2. The reason it no longer works is that "query" > is now a special to

[HACKERS] plpgsql keywords are hidden reserved words

2007-11-05 Thread Tom Lane
I was somewhat bemused just now to find that this function stopped working: regression=# create function estimate_rows(query text) returns float8 as $$ declare r text; begin for r in execute 'explain ' || query loop if substring(r from 'rows=[0-9]') is not null then return substring (r