<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Some issues on the soft upgrade, where the client soft upgrades an 8.3/1.3 database to 8.3/1.4, then dumps and restores into 8.4 to create an 8.4/1.4 database (seems like the most likely upgrade path, and the one we should recommend).<div><br></div><div>These are aesthetic, the actual restore is good. I was thinking that since our PgSQL requirement is 8.2, we could add DROP IF EXISTS statements to the top of postgis.sql for the removed functions and then postgis_upgrade.sql would inherit them, and everything would work hunky dory.</div><div><br></div><div>Thoughts?</div><div><br></div><div>P</div><div><br></div><div>PS - please think about, and try some, upgrades. We need to include a good upgrade document with this release, and Bruce's first attempt failed becuase he tried to simultaneously upgrade pgsql and postgis. We need to be clear about the procedure.</div><div><div><br><div>Begin forwarded message:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>From: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">"Bruce Rindahl" <<a href="mailto:Bruce.Rindahl@ventura.org">Bruce.Rindahl@ventura.org</a>></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Date: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">July 8, 2009 3:49:09 PM PDT (CA)</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>To: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica">"Paul Ramsey" <<a href="mailto:pramsey@opengeo.org">pramsey@opengeo.org</a>></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: 12.0px Helvetica; color: #000000"><b>Subject: </b></font><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><b>Re: PostGIS 1.4</b></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div> </div><div style="MARGIN: 4px 4px 1px; FONT: 10pt Tahoma; WORD-WRAP: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space"> <div>Thanks</div> <div>Soft upgrade worked much better.  The directions for a hard upgrade looked like *nix only.</div> <div>FYI the following are the errors during the soft restore:</div> <div> </div> <div>pg_restore: [archiver (db)] Error while PROCESSING TOC:<br>pg_restore: [archiver (db)] Error from TOC entry 20; 1255 67668 FUNCTION histogram2d_in(cstring) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION histogram2d_in(cstring) RETURNS histogram2d<br>    AS '$libdir/liblwgeom.dll', 'lwhistogram2d_in'<br>    LANGUAGE ...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.histogram2d_in(cstring) does not exist<br>    Command was: ALTER FUNCTION public.histogram2d_in(cstring) OWNER TO postgres;<br>pg_restore: creating FUNCTION histogram2d_out(histogram2d)<br>pg_restore: [archiver (db)] Error from TOC entry 21; 1255 67669 FUNCTION histogram2d_out(histogram2d) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION histogram2d_out(histogram2d) RETURNS cstring<br>    AS '$libdir/liblwgeom.dll', 'lwhistogram2d_out'<br>    LANGUAG...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.histogram2d_out(histogram2d) does not exist<br>    Command was: ALTER FUNCTION public.histogram2d_out(histogram2d) OWNER TO postgres;<br>pg_restore: creating TYPE histogram2d<br>pg_restore: [archiver (db)] Error from TOC entry 1039; 1247 67667 TYPE histogram2d postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function histogram2d_in(cstring) does not exist<br>    Command was: CREATE TYPE histogram2d (<br>    INTERNALLENGTH = variable,<br>    INPUT = histogram2d_in,<br>    OUTPUT = histogram2d_out,<br>    ALIGN...<br>pg_restore: creating FUNCTION asgml(geometry, integer, integer)<br>pg_restore: [archiver (db)] Error from TOC entry 22; 1255 67754 FUNCTION asgml(geometry, integer, integer) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION asgml(geometry, integer, integer) RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_asGML'<br>    LANGUAGE c...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.asgml(geometry, integer, integer) does not exist<br>    Command was: ALTER FUNCTION public.asgml(geometry, integer, integer) OWNER TO postgres;<br>pg_restore: creating FUNCTION asukml(geometry, integer, integer)<br>pg_restore: [archiver (db)] Error from TOC entry 24; 1255 67766 FUNCTION asukml(geometry, integer, integer) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION asukml(geometry, integer, integer) RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_asKML'<br>    LANGUAGE ...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.asukml(geometry, integer, integer) does not exist<br>    Command was: ALTER FUNCTION public.asukml(geometry, integer, integer) OWNER TO postgres;<br>pg_restore: creating FUNCTION asukml(geometry, integer)<br>pg_restore: [archiver (db)] Error from TOC entry 25; 1255 67767 FUNCTION asukml(geometry, integer) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION asukml(geometry, integer) RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_asKML'<br>    LANGUAGE c IMMUTAB...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.asukml(geometry, integer) does not exist<br>    Command was: ALTER FUNCTION public.asukml(geometry, integer) OWNER TO postgres;<br>pg_restore: creating FUNCTION asukml(geometry)<br>pg_restore: [archiver (db)] Error from TOC entry 26; 1255 67768 FUNCTION asukml(geometry) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION asukml(geometry) RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_asKML'<br>    LANGUAGE c IMMUTABLE STRICT;<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.asukml(geometry) does not exist<br>    Command was: ALTER FUNCTION public.asukml(geometry) OWNER TO postgres;<br>pg_restore: creating FUNCTION build_histogram2d(histogram2d, text, text)<br>pg_restore: [archiver (db)] Error from TOC entry 27; 1255 67791 FUNCTION build_histogram2d(histogram2d, text, text) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION build_histogram2d(histogram2d, text, text) RETURNS histogram2d<br>    AS '$libdir/liblwgeom.dll', 'build_lwhist...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.build_histogram2d(histogram2d, text, text) does not exist<br>    Command was: ALTER FUNCTION public.build_histogram2d(histogram2d, text, text) OWNER TO postgres;<br>pg_restore: creating FUNCTION build_histogram2d(histogram2d, text, text, text)<br>pg_restore: [archiver (db)] Error from TOC entry 28; 1255 67792 FUNCTION build_histogram2d(histogram2d, text, text, text) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  PL/pgSQL functions cannot return type histogram2d<br>    Command was: CREATE FUNCTION build_histogram2d(histogram2d, text, text, text) RETURNS histogram2d<br>    AS $_$<br>BEGIN<br> EXECUTE 'SET local se...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.build_histogram2d(histogram2d, text, text, text) does not exist<br>    Command was: ALTER FUNCTION public.build_histogram2d(histogram2d, text, text, text) OWNER TO postgres;<br>pg_restore: creating FUNCTION create_histogram2d(box2d, integer)<br>pg_restore: [archiver (db)] Error from TOC entry 30; 1255 67808 FUNCTION create_histogram2d(box2d, integer) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION create_histogram2d(box2d, integer) RETURNS histogram2d<br>    AS '$libdir/liblwgeom.dll', 'create_lwhistogram2d...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.create_histogram2d(box2d, integer) does not exist<br>    Command was: ALTER FUNCTION public.create_histogram2d(box2d, integer) OWNER TO postgres;<br>pg_restore: creating FUNCTION dump(geometry)<br>pg_restore: [archiver (db)] Error from TOC entry 32; 1255 67825 FUNCTION dump(geometry) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION dump(geometry) RETURNS SETOF geometry_dump<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_dump'<br>    LANGUAGE c IMMU...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.dump(geometry) does not exist<br>    Command was: ALTER FUNCTION public.dump(geometry) OWNER TO postgres;<br>pg_restore: creating FUNCTION estimate_histogram2d(histogram2d, box2d)<br>pg_restore: [archiver (db)] Error from TOC entry 35; 1255 67833 FUNCTION estimate_histogram2d(histogram2d, box2d) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION estimate_histogram2d(histogram2d, box2d) RETURNS double precision<br>    AS '$libdir/liblwgeom.dll', 'estimate_...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.estimate_histogram2d(histogram2d, box2d) does not exist<br>    Command was: ALTER FUNCTION public.estimate_histogram2d(histogram2d, box2d) OWNER TO postgres;<br>pg_restore: creating FUNCTION explode_histogram2d(histogram2d, text)<br>pg_restore: [archiver (db)] Error from TOC entry 36; 1255 67839 FUNCTION explode_histogram2d(histogram2d, text) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION explode_histogram2d(histogram2d, text) RETURNS histogram2d<br>    AS '$libdir/liblwgeom.dll', 'explode_lwhistog...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.explode_histogram2d(histogram2d, text) does not exist<br>    Command was: ALTER FUNCTION public.explode_histogram2d(histogram2d, text) OWNER TO postgres;<br>pg_restore: creating FUNCTION jtsnoop(geometry)<br>pg_restore: [archiver (db)] Error from TOC entry 38; 1255 67906 FUNCTION jtsnoop(geometry) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION jtsnoop(geometry) RETURNS geometry<br>    AS '$libdir/liblwgeom.dll', 'JTSnoop'<br>    LANGUAGE c STRICT;<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.jtsnoop(geometry) does not exist<br>    Command was: ALTER FUNCTION public.jtsnoop(geometry) OWNER TO postgres;<br>pg_restore: creating FUNCTION postgis_jts_version()<br>pg_restore: [archiver (db)] Error from TOC entry 39; 1255 68009 FUNCTION postgis_jts_version() postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION postgis_jts_version() RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'postgis_jts_version'<br>    LANGUAGE c IMMU...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.postgis_jts_version() does not exist<br>    Command was: ALTER FUNCTION public.postgis_jts_version() OWNER TO postgres;<br>pg_restore: creating FUNCTION st_build_histogram2d(histogram2d, text, text, text)<br>pg_restore: [archiver (db)] Error from TOC entry 43; 1255 68062 FUNCTION st_build_histogram2d(histogram2d, text, text, text) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  PL/pgSQL functions cannot return type histogram2d<br>    Command was: CREATE FUNCTION st_build_histogram2d(histogram2d, text, text, text) RETURNS histogram2d<br>    AS $_$<br>BEGIN<br> EXECUTE 'SET local...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.st_build_histogram2d(histogram2d, text, text, text) does not exist<br>    Command was: ALTER FUNCTION public.st_build_histogram2d(histogram2d, text, text, text) OWNER TO postgres;<br>pg_restore: creating FUNCTION st_pointn(geometry)<br>pg_restore: [archiver (db)] Error from TOC entry 45; 1255 68140 FUNCTION st_pointn(geometry) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION st_pointn(geometry) RETURNS geometry<br>    AS '$libdir/liblwgeom.dll', 'LWGEOM_pointn_linestring'<br>    LANGUAGE...<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.st_pointn(geometry) does not exist<br>    Command was: ALTER FUNCTION public.st_pointn(geometry) OWNER TO postgres;<br>pg_restore: creating FUNCTION text(boolean)<br>pg_restore: [archiver (db)] Error from TOC entry 46; 1255 68179 FUNCTION text(boolean) postgres<br>pg_restore: [archiver (db)] could not execute query: ERROR:  could not access file "$libdir/liblwgeom.dll": No such file or directory<br>    Command was: CREATE FUNCTION text(boolean) RETURNS text<br>    AS '$libdir/liblwgeom.dll', 'BOOL_to_text'<br>    LANGUAGE c IMMUTABLE STRICT;<br>pg_restore: [archiver (db)] could not execute query: ERROR:  function public.text(boolean) does not exist<br>    Command was: ALTER FUNCTION public.text(boolean) OWNER TO postgres;<br>WARNING: errors ignored on restore: 35</div> <div> </div> <div>Process returned exit code 1.<br></div> <div> </div> <div>Thanks!</div> <div>Bruce</div> <div><br><br>>>> "Paul Ramsey" <<a href="mailto:pramsey@opengeo.org">pramsey@opengeo.org</a>> 7/8/2009 3:16 PM >>><br></div> <div>Backing up.</div> <div><br></div> <div>There are two issues here: PostgreSQL 8.3 to 8.4; PostGIS 1.3 to 1.4.</div> <div><br></div> <div>The PostgreSQL upgrade is going to require a dump-and-restore.</div> <div><br></div> <div>The PostGIS upgrade does not require a dump-and-restore.</div> <div><br></div> <div>So, here are some upgrade paths:</div> <div><br></div> <div>- Soft upgrade, two steps: Install PostGIS 1.4 in your PgSQL 8.3 instance, and use postgis_upgrade.sql to upgrade your running database. Dump that database. Install PgSQL 8.4 and PostGIS 1.4. Restore into that database.</div> <div>- Hard upgrade, one step: Dump your PgSQL 8.3/PostGIS 1.3 database, install PgSQL 8.4/PostGIS 1.4 and restore, following the hard upgrade instructions. <a href="http://postgis.refractions.net/documentation/manual-1.4/ch02.html#hard_upgrade">http://postgis.refractions.net/documentation/manual-1.4/ch02.html#hard_upgrade</a></div> <div><br></div> <div>Paul</div> <div><br> <div> <div>On 8-Jul-09, at 3:10 PM, Bruce Rindahl wrote:</div><br class="Apple-interchange-newline"> <blockquote type="cite"> <div style="MARGIN: 4px 4px 1px; FONT: 10pt Tahoma; WORD-WRAP: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space"> <div>I backed up my database UDFCD from 8.3 (using pgadmin in 8.4) to backup file.</div> <div>I created a blank database UDFCD in 8.4 from the template0.  The restore from pgadmin gives:</div></div></blockquote></div><br></div></div></blockquote></div><br></div></body></html>