Re: [HACKERS] INTERSECT in gram.y again - Mailing list pgsql-hackers

From Michael Meskes
Subject Re: [HACKERS] INTERSECT in gram.y again
Date
Msg-id 19990123132736.A3678@gmx.net
Whole thread Raw
In response to Re: [HACKERS] INTERSECT in gram.y again  (Bruce Momjian <maillist@candle.pha.pa.us>)
Responses Re: [HACKERS] INTERSECT in gram.y again  (Bruce Momjian <maillist@candle.pha.pa.us>)
List pgsql-hackers
On Fri, Jan 22, 1999 at 02:34:52PM -0500, Bruce Momjian wrote:
> As far as I can tell, The 'else' part of the query only gets executed in
> the case of UNION, EXCEPT, or INTERCEPT.  Because FOR UPDATE is invalid
> in all these cases, the intersectClause being non-NULL is an OK test,

You're right of course. 

> though, as you point out, it is not accurate.  I have modified gram.y to
> check just for unionClause:
> 
> if (n->unionClause != NULL)
>  elog(ERROR, "SELECT FOR UPDATE is not allowed with UNION/INTERSECT/EXCEPT claus$

But isn't the pure existance of for update enough to have an error in the
else branch?

And can't we get the same error in the if branch as well with a having
clause or something like that?

Michael

-- 
Michael Meskes                         | Go SF 49ers!
Th.-Heuss-Str. 61, D-41812 Erkelenz    | Go Rhein Fire!
Tel.: (+49) 2431/72651                 | Use Debian GNU/Linux!
Email: Michael.Meskes@gmx.net          | Use PostgreSQL!


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Adding some const keywords to external interfaces
Next
From: Tom Lane
Date:
Subject: UNION regress test is failing