Re: BUG #18077: PostgreSQL server subprocess crashed by a SELECT statement with WITH clause

From: "Lepikhov Andrei" <a(dot)lepikhov(at)postgrespro(dot)ru>
To: "Richard Guo" <guofenglinux(at)gmail(dot)com>
Cc: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, fuboat(at)outlook(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #18077: PostgreSQL server subprocess crashed by a SELECT statement with WITH clause
Date: 2023-09-06 07:14:40
Message-ID: 620f0695-0d41-4811-aae7-fb8f572114f6@app.fastmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Wed, Sep 6, 2023, at 1:55 PM, Richard Guo wrote:
> On Wed, Sep 6, 2023 at 11:40 AM Lepikhov Andrei
> <a(dot)lepikhov(at)postgrespro(dot)ru> wrote:
>> Hi,
>>
>> I am writing here just because you change this specific part of code.
>> Designing a custom node I found the problem with CTE and Subqueries. The reproduction sample looks quite similar to yours:
>>
>> create view tt24v as
>> with cte as materialized (select r from (values(1,2),(3,4)) r)
>> select (r).column2 as col_a, (rr).column2 as col_b from
>> cte join (select rr from (values(1,7),(3,8)) rr limit 2) ss
>> on (r).column1 = (rr).column1;
>> explain (verbose, costs off) select * from tt24v;
>>
>> but fails with the error "failed to find plan for CTE ..." with a custom node over a JOIN.
>
> The error message indicates that something must have gone wrong. I
> don't know well enough about custom scan, but I cannot reproduce this
> error with your query. Am I missing something?
Yeah, you should design cusom node to reproduce it. I can't publish my current code, but will try to invent a simple example.

--
Regards,
Andrei Lepikhov

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Laurenz Albe 2023-09-06 08:08:06 Re: BUG #18090: Encountering Toast Table Corruption and Missing Chunk Number Error During PostgreSQL Data Migration
Previous Message Richard Guo 2023-09-06 06:55:08 Re: BUG #18077: PostgreSQL server subprocess crashed by a SELECT statement with WITH clause