[PostGIS] #6042: Getting downgrade errors on debbie for PostGIS 3.4 when newer library can't be loaded

PostGIS trac at osgeo.org
Sun Feb 8 02:16:43 PST 2026


#6042: Getting downgrade errors on debbie for PostGIS 3.4 when newer library can't
be loaded
---------------------------+---------------------------
  Reporter:  robe          |      Owner:  strk
      Type:  defect        |     Status:  new
  Priority:  blocker       |  Milestone:  PostGIS 3.4.5
 Component:  upgrade/soft  |    Version:  3.5.x
Resolution:                |   Keywords:
---------------------------+---------------------------

Old description:

> {{{
> 23:26:00  after-create-script ../regress/hooks/hook-after-create.sql ..
> ok
> 23:26:00  regress/core/regress .. ok in 111 ms
> 23:26:00  before-uninstall-script ../regress/hooks/hook-before-
> uninstall.sql .. ok
> 23:26:00  regress/uninstall .. ok (4724)
> 23:26:00
> 23:26:00 Run tests: 4
> 23:26:00 Failed: 0
> 23:26:00 Skipping upgrade test as RUNTESTFLAGS already requested upgrades
> 23:26:00 gmake: Leaving directory
> '/var/lib/jenkins/workspace/postgis/branches/3.4/regress'
> 23:26:00 SKIP: 3.4.5 -> 3.4.5 (we won't test same-version
> upgrade/downgrade here)
> 23:26:00 Testing postgis extension downgrade 3.5.1dev--3.4.5
> 23:26:00 FAIL: postgis extension downgrade 3.5.1dev--3.4.5 gave some
> other error:
> 23:26:00 Creating database 'postgis_reg'.
> 23:26:00 Preparing db 'postgis_reg' using: CREATE EXTENSION postgis
> VERSION '3.5.1dev' SCHEMA public
> 23:26:00  failed (Error encountered creating EXTENSION POSTGIS:
> /var/lib/jenkins/workspace/postgis/tmp/3_4_pg12w64/regress_log)
> 23:26:00
> -----------------------------------------------------------------------------
> 23:26:00 NOTICE:  schema "public" already exists, skipping
> 23:26:00 CREATE SCHEMA
> 23:26:00 ERROR:  could not load library
> "/var/lib/jenkins/workspace/pg/rel/pg12w64/lib/postgresql/postgis-3.5.so":
> /var/lib/jenkins/workspace/pg/rel/pg12w64/lib/postgresql/postgis-3.5.so:
> undefined symbol: GEOSPreparedRelatePattern
> 23:26:00
> -----------------------------------------------------------------------------
> 23:26:00 gmake: *** [runtest.mk:24: check-regress] Error 1
> 23:26:00 gmake: Leaving directory
> '/var/lib/jenkins/workspace/postgis/branches/3.4/regress'
> 23:26:00 Testing postgis extension downgrade 3.5.1dev--3.4.5 with
> standard-conforming-strings off
> 23:26:01 FAIL: postgis extension downgrade 3.5.1dev--3.4.5 with standard-
> conforming-strings off gave some other error:
> }}}
>
> I realized this is because the GEOS lib I have in 3.5.1 is newer than
> 3.4, but shouldn't it be bailing even before it tries to load the old
> library.

New description:

 {{{
 23:26:00  after-create-script ../regress/hooks/hook-after-create.sql .. ok
 23:26:00  regress/core/regress .. ok in 111 ms
 23:26:00  before-uninstall-script ../regress/hooks/hook-before-
 uninstall.sql .. ok
 23:26:00  regress/uninstall .. ok (4724)
 23:26:00
 23:26:00 Run tests: 4
 23:26:00 Failed: 0
 23:26:00 Skipping upgrade test as RUNTESTFLAGS already requested upgrades
 23:26:00 gmake: Leaving directory
 '/var/lib/jenkins/workspace/postgis/branches/3.4/regress'
 23:26:00 SKIP: 3.4.5 -> 3.4.5 (we won't test same-version
 upgrade/downgrade here)
 23:26:00 Testing postgis extension downgrade 3.5.1dev--3.4.5
 23:26:00 FAIL: postgis extension downgrade 3.5.1dev--3.4.5 gave some other
 error:
 23:26:00 Creating database 'postgis_reg'.
 23:26:00 Preparing db 'postgis_reg' using: CREATE EXTENSION postgis
 VERSION '3.5.1dev' SCHEMA public
 23:26:00  failed (Error encountered creating EXTENSION POSTGIS:
 /var/lib/jenkins/workspace/postgis/tmp/3_4_pg12w64/regress_log)
 23:26:00
 -----------------------------------------------------------------------------
 23:26:00 NOTICE:  schema "public" already exists, skipping
 23:26:00 CREATE SCHEMA
 23:26:00 ERROR:  could not load library
 "/var/lib/jenkins/workspace/pg/rel/pg12w64/lib/postgresql/postgis-3.5.so":
 /var/lib/jenkins/workspace/pg/rel/pg12w64/lib/postgresql/postgis-3.5.so:
 undefined symbol: GEOSPreparedRelatePattern
 23:26:00
 -----------------------------------------------------------------------------
 23:26:00 gmake: *** [runtest.mk:24: check-regress] Error 1
 23:26:00 gmake: Leaving directory
 '/var/lib/jenkins/workspace/postgis/branches/3.4/regress'
 23:26:00 Testing postgis extension downgrade 3.5.1dev--3.4.5 with
 standard-conforming-strings off
 23:26:01 FAIL: postgis extension downgrade 3.5.1dev--3.4.5 with standard-
 conforming-strings off gave some other error:
 }}}

 I realized this is because the GEOS lib I have in 3.5.1 is newer than 3.4,
 but shouldn't it be bailing even before it tries to load the old library.

--
Comment (by strk):

 It fails loading 3.5.1 because it was built against a newer version of
 GEOS  which isn't found at loading time. We could make such cases a SKIP
 instead of a FAIL, given the focus is on testing the target (3.4 in this
 case) rather than the source of the downgrade (3.5.1 in this case). Or you
 can pass --skip-tests to fine tune which tests to skip ("downgrade
 3.5.1dev--3.4.5" in this specific case)
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/6042#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