[postgis-devel] [postgis-tickets] r17267 - Change from using CTE to use subquery so results are the same across all platforms

Sandro Santilli strk at kbt.io
Thu Feb 21 07:16:25 PST 2019


On Thu, Feb 21, 2019 at 06:53:21AM +0000, Regina Obe wrote:
> Author: robe
> Date: 2019-02-21 06:53:21 -0800 (Thu, 21 Feb 2019)
> New Revision: 17267
> 
> Modified:
>    trunk/regress/core/estimatedextent.sql
>    trunk/regress/core/estimatedextent_expected
> Log:
> Change from using CTE to use subquery so results are the same across all platforms
> reason necessary in PostgreSQL 12, CTE changed from being always materialized to being often inlined.  
> This means PG12, no longer behaves like old CTE and behaves more like subquery.
> As a result 12 CTE is outputting 4 warnings instead of 1 like older versions. 
> Changing to just subquery should force all to output 4 warnings.
> references #4329 for PostGIS 3.0

Sounds like a regression in PostgreSQL, doesn't it ?
ST_EstimatedExtent is even an IMMUTABLE function, we _want_
it to be called once instead of 4 times...

I'd raise this upstream.

--strk;


More information about the postgis-devel mailing list