Tom Lane schrieb am 27.06.2018 um 05:48:
>> I see there was some discussion last year about removing the CTE
>> optimization fence (e.g.
>> http://www.postgresql-archive.org/CTE-inlining-td5958992.html) but can't
>> find anything more recent. Does anyone know if this is still under
>> consideration?
>
> but we have to settle on a way of controlling it.
+1 from me.
I am running more and more into situations where people consider this a bug rather than a feature.
FWIW, I think a GUC that switches between the current (mostly unwanted, at least surprising)
way and one where the CTE is optimized together with the main query would suit "most" people.
For sake of compatibility this could default to the current behaviour
+1 from me. The default should be "no fence" for sake of least surprise I think. Documenting the change would be sufficient.
I hope this will be picked up in the comming V12-cycle.
--
Andreas Joseph Krogh
CTO / Partner - Visena AS
Mobile: +47 909 56 963