From: | Tatsuo Ishii <ishii(at)postgresql(dot)org> |
---|---|
To: | david(at)fetter(dot)org |
Cc: | pgsql-patches(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [HACKERS] WITH RECURSIVE patches 0818 |
Date: | 2008-08-19 07:49:55 |
Message-ID: | 20080819.164955.23011696.t-ishii@sraoss.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
> I think I may have found another bug:
>
> WITH RECURSIVE t(i,j) AS (
> VALUES (1,2)
> UNION ALL
> SELECT t2.i, t.j
> FROM (
> SELECT 2 AS i
> UNION ALL /* Wrongly getting detected, I think */
> SELECT 3 AS i
> ) AS t2
> JOIN
> t
> ON (t2.i = t.i)
> )
> SELECT * FROM t;
> ERROR: attribute number 2 exceeds number of columns 1
>
> Is there some way to ensure that in the case of WITH RECURSIVE, the
> query to the right of UNION ALL follows only the SQL:2008 rules about
> not having outer JOINs, etc. in it, but otherwise make it opaque to
> the error-checking code?
>
> I know I didn't explain that well, but the above SQL should work and
> the error appears to stem from the parser's looking at the innermost
> UNION ALL instead of the outermost.
Thanks for the report. I will look into this.
--
Tatsuo Ishii
SRA OSS, Inc. Japan
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2008-08-19 08:09:41 | Re: Overhauling GUCS |
Previous Message | Pavel Stehule | 2008-08-19 07:45:54 | possible minor EXPLAIN bug? |
From | Date | Subject | |
---|---|---|---|
Next Message | Xiao Meng | 2008-08-19 09:28:38 | Re: hash index improving v3 |
Previous Message | David Fetter | 2008-08-19 05:14:14 | Re: [HACKERS] WITH RECURSIVE patches 0818 |