Re: CTE Materialization - Mailing list pgsql-general

From Paul van der Linden
Subject Re: CTE Materialization
Date
Msg-id CAEC-EqCH7PaJyGNmcVSNw=hR_Ga-q+YL+e2da0AuP75_JUqzeQ@mail.gmail.com
Whole thread Raw
In response to Re: CTE Materialization  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: CTE Materialization  (Дмитрий Иванов <firstdismay@gmail.com>)
List pgsql-general
It did indeed work as expected.
Took the query down from over 18 hours to 20 minutes, so a huge win!

Paul

On Thu, Dec 2, 2021 at 11:34 PM David G. Johnston <david.g.johnston@gmail.com> wrote:
On Thursday, December 2, 2021, Paul van der Linden <paul.doskabouter@gmail.com> wrote:
Hi,

when switching to postgres 14 (from 11) I'm having some slow queries because of inlining of CTE's.
I know I can get the same result as with PG11 when adding MATERIALIZED to the cte, but the same application also needs to be able to run on older postgres versions, so that is a no-go.
Is there any other way that I can have materialized cte's in PG14 while still be compatible with older PG versions?
Much appreciated,

The usual anti-inlining hack is to add an “offset 0” to the query.  Haven’t tried it in 14 myself though.

David J.
 

pgsql-general by date:

Previous
From: Rob Sargent
Date:
Subject: Re: Query planner issue with preferring primary key over a better index when using ORDER BY and LIMIT
Next
From: Laurenz Albe
Date:
Subject: Re: Query planner issue with preferring primary key over a better index when using ORDER BY and LIMIT