Opened 10 years ago
Closed 9 years ago
#3029 closed defect (invalid)
[raster] Cleanup duplication of ST_Intersection(raster, geometry) function
Reported by: | strk | Owned by: | dustymugs |
---|---|---|---|
Priority: | high | Milestone: | PostGIS 2.2.0 |
Component: | raster | Version: | master |
Keywords: | Cc: |
Description
As mentioned in #3028 there are two candidate versions to call for a ST_Intersection(raster,geometry). One takes 2 arguments, the other takes 3 but the third is optional. I woudln't be surprised to have an ERROR at runtime when trying to call them (but I hadn't tried). In any case one of the two seems useless and could as well be removed, or the one with a third argument should mark it as non-optional.
Whatever makes the least problem on upgrade should be done.
Usually (from the ancient past) I preferred _never_ to use DEFAULT arguments, giving precedence to full backward compatibility and easy-to-upgrade (create or replace). But the horse are likely already out here
Change History (4)
comment:1 by , 10 years ago
Priority: | medium → high |
---|---|
Summary: | Cleanup duplication of ST_Intersection(raster, geometry) function → [raster] Cleanup duplication of ST_Intersection(raster, geometry) function |
comment:2 by , 9 years ago
comment:3 by , 9 years ago
upgraded from what?
When I install PostGIS 2.1.8 and then upgrade to PostGIS 2.2.0, I still have 14 functions with ST_Intersection in them (before and after)
\df ST_Intersection List of functions Schema | Name | Result data type | Argument data types --------+-----------------+------------------+--------------------------------------------------------------------------------------------------------------------------------------- public | st_intersection | geography | geography, geography public | st_intersection | geometry | geom1 geometry, geom2 geometry public | st_intersection | SETOF geomval | geomin geometry, rast raster, band integer DEFAULT 1 public | st_intersection | SETOF geomval | rast raster, band integer, geomin geometry public | st_intersection | SETOF geomval | rast raster, geomin geometry public | st_intersection | raster | rast1 raster, band1 integer, rast2 raster, band2 integer, nodataval double precision public | st_intersection | raster | rast1 raster, band1 integer, rast2 raster, band2 integer, nodataval double precision[] public | st_intersection | raster | rast1 raster, band1 integer, rast2 raster, band2 integer, returnband text DEFAULT 'BOTH'::text, nodataval double precision[] DEFAULT N public | st_intersection | raster | rast1 raster, band1 integer, rast2 raster, band2 integer, returnband text, nodataval double precision public | st_intersection | raster | rast1 raster, rast2 raster, nodataval double precision public | st_intersection | raster | rast1 raster, rast2 raster, nodataval double precision[] public | st_intersection | raster | rast1 raster, rast2 raster, returnband text DEFAULT 'BOTH'::text, nodataval double precision[] DEFAULT NULL::double precision[] public | st_intersection | raster | rast1 raster, rast2 raster, returnband text, nodataval double precision public | st_intersection | geometry | text, text (14 rows)
I only see one ST_Intersection(raster,geometry) in both
comment:4 by , 9 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Well then I guess I was wrong, or it was a glitch during development. Let's just close this out. Thanks for testing!
Paul, Regina: could you check your test-upgraded-databases for this ? A new install should have a single ST_Intersection(raster,geometry), does an upgraded database also have only one ?