Re: BUG #14153: Unrecognized node type error when upsert is present in recursive CTE

From: Peter Geoghegan <pg(at)heroku(dot)com>
To: thomas(dot)alton(at)gmail(dot)com
Cc: pgsql-bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #14153: Unrecognized node type error when upsert is present in recursive CTE
Date: 2016-05-22 00:03:41
Message-ID: CAM3SWZShRP+B29M81B=3-F68bYWSeSrpgpaZ_cOpA63XasicPQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

On Sat, May 21, 2016 at 4:28 PM, <thomas(dot)alton(at)gmail(dot)com> wrote:
> ERROR: XX000: unrecognized node type: 920
> LOCATION: raw_expression_tree_walker, nodeFuncs.c:3410
>
> I expected the query run successfully and return one row with 'a'.

This is clearly a bug.

920 is IndexElem, which can appear in a raw parse tree in 9.5, due to
ON CONFLICT's use of inference reusing what was previously only used
for CREATE INDEX. (It does not make it into the post-parse analysis
tree, though).

RECURSIVE isn't really special. You don't see the bug in the
non-RECURSIVE case because of the differing rules on query name
visibility.

I'll add a fix for this bug to my personal TODO list. It shouldn't be
hard to fix.

--
Peter Geoghegan

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Charles 2016-05-22 19:18:02 Re: BUG #14138: Inconsistent rounding behavior in float4 coercion
Previous Message thomas.alton 2016-05-21 23:28:02 BUG #14153: Unrecognized node type error when upsert is present in recursive CTE

Browse pgsql-hackers by date

  From Date Subject
Next Message Jan Johansson 2016-05-22 06:37:01 Inheritance
Previous Message thomas.alton 2016-05-21 23:28:02 BUG #14153: Unrecognized node type error when upsert is present in recursive CTE