No subselects in constraint (bug?) - Mailing list pgsql-bugs

From Alexey V. Neyman
Subject No subselects in constraint (bug?)
Date
Msg-id 20010713135728.U2566-100000@srv2.any
Whole thread Raw
Responses Re: No subselects in constraint (bug?)  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Re: No subselects in constraint (bug?)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
Hello there!

[Please Cc: me in followups.]

I tried the following:

CREATE TABLE a ( int4 id
);
CREATE TABLE b ( int4 id CHECK (id = ANY(SELECT a.id FROM a))
);

Tables are created ok, checking with '\d table' confirms it. But when I
try to insert into table b, e.g.:
INSERT INTO b (id) VALUES (0);
I get:
ERROR:  ExecEvalExpr: unknown expression type 108
Of course, the tuple is not inserted.

As quick dig of code showed, type 108 is T_SubLink which is created for
ANY() subselect, and ExecEvalExpr() function does not handle this type of
node. Is it intentional or a bug?

I use 7.0.3, but 7.1.2 code looks pretty the same in ExecEvalExpr(). The
platform is FreeBSD 4.3-R.

TIA for responses,
Alexey.

-- 
-------------------------------------------------+---------------------------            Yes.  We have good news!
    | Regards, Alexey V. Neyman     Well, that is to say, we have no news.     |     mailto: avn@any.ru
 
----------------------------------( Pkunk, SC2 )-+---------------------------



pgsql-bugs by date:

Previous
From: lender@tc.umn.edu (Paul A. Lender)
Date:
Subject: OpenSSH, Windows Clients, and Incoming Tunnels
Next
From: Lamar Owen
Date:
Subject: Re: Upgrade to 7.1.2 problem