[postgis-users] Upgrading to PostgreSQL 8.4.1 and PostGIS 1.4.0

Paragon Corporation lr at pcorp.us
Thu Oct 22 00:43:35 PDT 2009


Paul,
 
As long as you have an ST_Dump function you should be fine.  The dump
function is deprecated and will be removed in PostGIS 2.0.  As you stated,
you can remove those additonal functions you see.  The upgrade script
currently doesn't drop functions, it just adds new ones.
 
The other notices as you noted are expected from an upgrade.  You don't need
to do a hard upgrade.
 
Hope that helps,
Regina

  _____  

From: postgis-users-bounces at postgis.refractions.net
[mailto:postgis-users-bounces at postgis.refractions.net] On Behalf Of Moen,
Paul T.
Sent: Wednesday, October 21, 2009 5:37 PM
To: PostGIS Users Discussion
Subject: [postgis-users] Upgrading to PostgreSQL 8.4.1 and PostGIS 1.4.0


I have been trying to upgrade my PostgreSQL 8.3.8 to PostGIS 1.3.6 to
PostgreSQL 8.4.1 and PostGIS 1.4.0

I first installed PostGIS 1.4.0 and upgraded each database with the command
psql -U postgres -d DBNAME -f postgis_upgrade.sql

I encountered the following notices.


psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:215: NOTICE:  type
"box3d_extent" is not yet defined
DETAIL:  Creating a shell type definition.
CREATE FUNCTION
psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:219: NOTICE:
argument type box3d_extent is only a shell

and

CREATE AGGREGATE
psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:2683: NOTICE:  type
"pgis_abs" is not yet defined
DETAIL:  Creating a shell type definition.
CREATE FUNCTION
psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:2687: NOTICE:
argument type pgis_abs is only a shell

and 

CREATE AGGREGATE
psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:2732: NOTICE:
aggregate accum_old(geometry) does not exist, skipping
DROP AGGREGATE
CREATE AGGREGATE
psql:/usr/local/pgsql/share/contrib/postgis_upgrade.sql:2738: NOTICE:
aggregate st_accum_old(geometry) does not exist, skipping


I assumed these were fine and moved on to the full dump using pg_dumpall -U
postgres -o > full83dump.sql

I then installed PostgreSQL-8.4.1 and PostGIS-1.4.0 and load the data with
psql -U postgres -f full83dump.sql.

I get the following errors as each of the databases are loaded.
psql:full83dump.sql:366: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:369: ERROR:  function public.st_histogram2d_in(cstring)
does not exist
psql:full83dump.sql:377: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:380: ERROR:  function
public.st_histogram2d_out(histogram2d) does not exist
psql:full83dump.sql:392: ERROR:  function st_histogram2d_in(cstring) does
not exist
psql:full83dump.sql:502: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:505: ERROR:  function public._st_asgml(integer,
geometry, integer) does not exist
psql:full83dump.sql:1509: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:1512: ERROR:  function
public.build_histogram2d(histogram2d, text, text) does not exist
psql:full83dump.sql:1525: ERROR:  PL/pgSQL functions cannot return type
histogram2d
psql:full83dump.sql:1528: ERROR:  function
public.build_histogram2d(histogram2d, text, text, text) does not exist
psql:full83dump.sql:1757: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:1760: ERROR:  function public.create_histogram2d(box2d,
integer) does not exist
psql:full83dump.sql:2077: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:2080: ERROR:  function public.dump(geometry) does not
exist
psql:full83dump.sql:2191: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:2194: ERROR:  function
public.estimate_histogram2d(histogram2d, box2d) does not exist
psql:full83dump.sql:2257: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:2260: ERROR:  function
public.explode_histogram2d(histogram2d, text) does not exist
psql:full83dump.sql:3105: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:3108: ERROR:  function public.histogram2d_in(cstring)
does not exist
psql:full83dump.sql:3116: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:3119: ERROR:  function
public.histogram2d_out(histogram2d) does not exist
psql:full83dump.sql:3215: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:3218: ERROR:  function public.jtsnoop(geometry) does not
exist
psql:full83dump.sql:4976: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:4979: ERROR:  function public.postgis_jts_version() does
not exist
psql:full83dump.sql:6215: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:6218: ERROR:  function
public.st_build_histogram2d(histogram2d, text, text) does not exist
psql:full83dump.sql:6231: ERROR:  PL/pgSQL functions cannot return type
histogram2d
psql:full83dump.sql:6234: ERROR:  function
public.st_build_histogram2d(histogram2d, text, text, text) does not exist
psql:full83dump.sql:6440: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:6443: ERROR:  function
public.st_create_histogram2d(box2d, integer) does not exist
psql:full83dump.sql:6638: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:6641: ERROR:  function
public.st_estimate_histogram2d(histogram2d, box2d) does not exist
psql:full83dump.sql:6704: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:6707: ERROR:  function
public.st_explode_histogram2d(histogram2d, text) does not exist
psql:full83dump.sql:9070: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:9073: ERROR:  function public.st_text(boolean) does not
exist
psql:full83dump.sql:9379: ERROR:  could not access file "$libdir/liblwgeom":
No such file or directory
psql:full83dump.sql:9382: ERROR:  function public.text(boolean) does not
exist

I compared the upgraded databases to a new one created via the createdb,
createlang, psql -f postgis.sql and found a couple of differences.
The upgraded version is missing the dump(geometry) function.
The upgraded version has 2 extra functions,
update_geometry_stats(),update_geometry_stats(character varying,character
varying) that do not exist in new database I created.  I believe these were
used in upgrades from Postgresql 7.4 and lower so I should just drop these.


I see that in Ticket #144 most of the functions above are listed as a
non-issue.  

Am I correct in proceeding without worrying about the above errors?  Do I
need to do a hard upgrade instead?  If so, should I use the
new_postgis_restore.pl script?  I have found no information in the
documentation about this new script.


Thanks for any insight,

Paul

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20091022/36a017f8/attachment.html>


More information about the postgis-users mailing list