[postgis-tickets] [PostGIS] #4876: PostgreSQL 14 regress failure on uninstall and raster regresses many
PostGIS
trac at osgeo.org
Wed Mar 10 13:22:56 PST 2021
#4876: PostgreSQL 14 regress failure on uninstall and raster regresses many
----------------------+---------------------------
Reporter: robe | Owner: pramsey
Type: defect | Status: new
Priority: blocker | Milestone: PostGIS 3.2.0
Component: postgis | Version: master
Resolution: | Keywords:
----------------------+---------------------------
Comment (by pramsey):
So, that's a big paste :) Anyways, what you'll notice is that we're mostly
seeing lines missing. The gist of Tom's patch is that people (cough) were
defining functions as returning a single record, and then using the SRF
API to do set-returning which... mostly worked. The correct thing to do
though is to declare 'returning setof record' or 'returning table()', and
if you do that most of the problems go away.
The problems that remain, unfortunately are places where we're testing for
behaviour that is gone.
{{{
NOTICE: Invalid band index: 6. Indices must be 1-based. Returning NULL
||||
}}}
This is generated in
https://github.com/postgis/postgis/blob/2a73173e3b32400521bd3e8a7e09c9d6ca531838/raster/rt_pg/rtpg_band_properties.c#L592
Notice that we're failing during **setup** of the SRF, and bailing, and we
are getting a record with all NULL values as a **side effect**. The
"correct" thing to return when you bail during setup is what is happening
now: zero records are returned.
Most of the remaining errors are of this sort, and what I'm wrestling with
is how much logic downstream from this behaviour depends on it. Like, do I
now need to figure out how to *ape* this behaviour?
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4876#comment:3>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.
More information about the postgis-tickets
mailing list