[postgis-tickets] [PostGIS] #4334: Can't upgrade with a view based on ST_AsMVTGeom
PostGIS
trac at osgeo.org
Wed Feb 27 06:21:21 PST 2019
#4334: Can't upgrade with a view based on ST_AsMVTGeom
------------------------------------+---------------------------
Reporter: Algunenano | Owner: strk
Type: defect | Status: new
Priority: high | Milestone: PostGIS 2.4.7
Component: build/upgrade/install | Version: 2.4.x
Resolution: | Keywords:
------------------------------------+---------------------------
Comment (by Algunenano):
This is reproducible with the following elements:
* **AddGeometryColumn**:
{{{
# CREATE VIEW break_add_geom AS Select AddGeometryColumn(NULL, NULL, NULL,
NULL, 0, NULL, 0, true);
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop function addgeometrycolumn(character varying,character
varying,character varying,character varying,integer,character
varying,integer,boolean) because other objects depend on it
DETAIL: view break_add_geom depends on function
addgeometrycolumn(character varying,character varying,character
varying,character varying,integer,character varying,integer,boolean)
HINT: Use DROP ... CASCADE to drop the dependent objects too.
}}}
* **st_asx3d**:
{{{
# CREATE VIEW break_asx3d AS Select st_asx3d(NULL, 0, 0);
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop function st_asx3d(geometry,integer,integer) because
other objects depend on it
DETAIL: view break_asx3d depends on function
st_asx3d(geometry,integer,integer)
HINT: Use DROP ... CASCADE to drop the dependent objects too.
}}}
* **UpdateGeometrySRID**:
{{{
# CREATE VIEW break_updategeomtry AS SELECT UpdateGeometrySRID(NULL, NULL,
NULL, NULL, 0);
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop function updategeometrysrid(character
varying,character varying,character varying,character varying,integer)
because other objects depend on it
DETAIL: view break_updategeomtry depends on function
updategeometrysrid(character varying,character varying,character
varying,character varying,integer)
HINT: Use DROP ... CASCADE to drop the dependent objects too
}}}
* **ST_AsLatLonText**:
{{{
# CREATE VIEW break_aslatlon AS SELECT ST_AsLatLonText(the_geom, NULL)
FROM all_month;
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop function st_aslatlontext(geometry,text) because other
objects depend on it
DETAIL: view break_mvt depends on function st_aslatlontext(geometry,text)
HINT: Use DROP ... CASCADE to drop the dependent objects too.
}}}
* **ST_AsMVTGeom**:
{{{
# CREATE VIEW break_mvt AS SELECT ST_AsMVTGeom(the_geom, NULL) FROM
all_month;
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop function
st_asmvtgeom(geometry,box2d,integer,integer,boolean) because other objects
depend on it
DETAIL: view break_mvt depends on function
st_asmvtgeom(geometry,box2d,integer,integer,boolean)
HINT: Use DROP ... CASCADE to drop the dependent objects too.
}}}
* **geometry_columns**:
{{{
# CREATE VIEW break_geometry_column AS SELECT * FROM geometry_columns;
CREATE VIEW
# alter extension postgis update TO "3.0.0devnext";
ERROR: cannot drop view geometry_columns because other objects depend on
it
DETAIL: view break_geometry_column depends on view geometry_columns
HINT: Use DROP ... CASCADE to drop the dependent objects too
}}}
These are dummy examples but they show that these drops can break
upgrades. They mostly come from renaming parameters, so we'll need to
either only drop these functions if they have the old parameters or make
sure that the upgrade is possible when a parameter is renamed.
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4334#comment:1>
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