1
votes

I'm trying to restore a postgres datbase.

This database includes postgis data. But when restoring the sql dump I hit this error:

psql:postgis_db_dump.sql:2174: ERROR:  type "public.pgis_abs" does not exist

The system this was running on has postgresql-10-postgis-2.4 installed and the new system that I'm attempting to restore into has postgresql-11-postgis-2.5

On the old system doing \dT gives:

 Schema |       Name        |                                                                                 Description                                                                                 
--------+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 public | addbandarg        | postgis raster type: A composite type used as input into the ST_AddBand function defining the attributes and initial value of the new band.
 public | agg_count         | 
 public | agg_samealignment | 
 public | box2d             | postgis type: A box composed of x min, ymin, xmax, ymax. Often used to return the 2d enclosing box of a geometry.
 public | box2df            | 
 public | box3d             | postgis type: A box composed of x min, ymin, zmin, xmax, ymax, zmax. Often used to return the 3d extent of a geometry or collection of geometries.
 public | box3d_extent      | 
 public | chip              | 
 public | geography         | postgis type: Ellipsoidal spatial data type.
 public | geometry          | postgis type: Planar spatial data type.
 public | geometry_dump     | postgis type: A spatial datatype with two fields - geom (holding a geometry object) and path[] (a 1-d array holding the position of the geometry within the dumped object.)
 public | geomval           | postgis raster type: A spatial datatype with two fields - geom (holding a geometry object) and val (holding a double precision pixel value from a raster band).
 public | gidx              | 
 public | pgis_abs          | 
 public | rastbandarg       | postgis raster type: A composite type for use when needing to express a raster and a band index of that raster.
 public | raster            | postgis raster type: raster spatial data type.
 public | reclassarg        | postgis raster type: A composite type used as input into the ST_Reclass function defining the behavior of reclassification.
 public | spheroid          | 
 public | summarystats      | postgis raster type: A composite type returned by the ST_SummaryStats and ST_SummaryStatsAgg functions.
 public | unionarg          | postgis raster type: A composite type used as input into the ST_Union function defining the bands to be processed and behavior of the UNION operation.
 public | valid_detail      | 
(21 rows)

But on the new system I get:

 Schema |         Name         |                                                                                 Description                                                                                 
--------+----------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 public | addbandarg           | postgis raster type: A composite type used as input into the ST_AddBand function defining the attributes and initial value of the new band.
 public | agg_count            | 
 public | agg_samealignment    | 
 public | box2d                | postgis type: A box composed of x min, ymin, xmax, ymax. Often used to return the 2d enclosing box of a geometry.
 public | box2df               | 
 public | box3d                | postgis type: A box composed of x min, ymin, zmin, xmax, ymax, zmax. Often used to return the 3d extent of a geometry or collection of geometries.
 public | geography            | postgis type: Ellipsoidal spatial data type.
 public | geometry             | postgis type: Planar spatial data type.
 public | geometry_dump        | postgis type: A spatial datatype with two fields - geom (holding a geometry object) and path[] (a 1-d array holding the position of the geometry within the dumped object.)
 public | geomval              | postgis raster type: A spatial datatype with two fields - geom (holding a geometry object) and val (holding a double precision pixel value from a raster band).
 public | gidx                 | 
 public | rastbandarg          | postgis raster type: A composite type for use when needing to express a raster and a band index of that raster.
 public | raster               | postgis raster type: raster spatial data type.
 public | reclassarg           | postgis raster type: A composite type used as input into the ST_Reclass function defining the behavior of reclassification.
 public | spheroid             | 
 public | summarystats         | postgis raster type: A composite type returned by the ST_SummaryStats and ST_SummaryStatsAgg functions.
 public | tablefunc_crosstab_2 | 
 public | tablefunc_crosstab_3 | 
 public | tablefunc_crosstab_4 | 
 public | textual_identity     | 
 public | unionarg             | postgis raster type: A composite type used as input into the ST_Union function defining the bands to be processed and behavior of the UNION operation.
 public | valid_detail         | 
(22 rows)

It seems that datatype is no longer present. Does anyone know the best way to deal with this?

1

1 Answers

0
votes

Apparently, the pgis_abs column is a dummy column, as per this commit:

4035, remove dummy pgis_abs type from aggregate/collect routines

Sounds like you should be able to drop the pgis_abs column before performing the upgrade

See also this post