Re: Is there a way to identify a plan generated by GECO? - Mailing list pgsql-performance

From Nikolay Samokhvalov
Subject Re: Is there a way to identify a plan generated by GECO?
Date
Msg-id CAM527d_cpe_mMrbO4OVLPfZGsF7ukLYA=dPAyeiy-D-smuukAQ@mail.gmail.com
Whole thread Raw
In response to Is there a way to identify a plan generated by GECO?  (Jerry Brenner <jbrenner@guidewire.com>)
List pgsql-performance

On Thu, Jul 17, 2025 at 18:11 Jerry Brenner <jbrenner@guidewire.com> wrote:
We are on Postgres 15.5 (Aurora)  and capturing query plans via auto_explain.  We are seeing a large number of query plans for 2 queries that have 12 tables.  Every fast (or "fast enough") plan has a left deep tree and every slow plan has a bushy tree.  Is there a way to determine if a plan was generated by GECO?

We have from_collapse_limit, join_collapse_limit and geqo_threshold all set to 12.  (There is a COUNT(*) above derived table - could that be somehow affecting this?)

I've manually explained plans and haven't seen the problem, but then it turns up the next day (with the same parameter values) with multiple execution plans.

I'm not aware of ability to see if grow was involved, but with Aurora, should be able can provision a thin (CoW) clone with PITR to a specific point when you suspect the plan in question was used ("slow") -- and study the planner behavior in detail, experimenting and adjusting planner parameters.

Nik

pgsql-performance by date:

Previous
From: Jerry Brenner
Date:
Subject: Is there a way to identify a plan generated by GECO?
Next
From: Tom Lane
Date:
Subject: Re: Is there a way to identify a plan generated by GECO?