Checking for Presence of Required Libraries Fails during PostgreSQLUpgrade - Mailing list pgsql-general

From TalGloz
Subject Checking for Presence of Required Libraries Fails during PostgreSQLUpgrade
Date
Msg-id 1588370616126-0.post@n3.nabble.com
Whole thread Raw
Responses Re: Checking for Presence of Required Libraries Fails duringPostgreSQL Upgrade  (Adrian Klaver <adrian.klaver@aklaver.com>)
Re: Checking for Presence of Required Libraries Fails duringPostgreSQL Upgrade  (Bruce Momjian <bruce@momjian.us>)
List pgsql-general
I'm trying to upgrade my PostgreSQL form 10.2 to 11.7 (and eventually to
12.x), when I run:

 /usr/pgsql-11/bin/pg_upgrade --old-bindir=/usr/pgsql-10/bin/
--new-bindir=/usr/pgsql-11/bin/ --old-datadir=/var/lib/pgsql/10/data
--new-datadir=/var/lib/pgsql/11/data --check

I get:

Checking for presence of required libraries   fatal
Your installation references loadable libraries that are missing from the
new installation.  You can add these libraries to the new installation,
or remove the functions using them from the old installation.  A list of
problem libraries is in the file:
    loadable_libraries.txt" 

my loadable_libraries.txt file shows:

could not load library "myfunc": ERROR:  could not access file "myfunc": No
such file or directory
could not load library "randomness": ERROR:  could not access file
"randomness": No such file or directory
could not load library "seal_diff_cpp": ERROR:  could not access file
"seal_diff_cpp": No such file or directory
could not load library "seal_mean_cxx": ERROR:  could not access file
"seal_mean_cxx": No such file or directory
could not load library "seal_mean_cxx_v2": ERROR:  could not access file
"seal_mean_cxx_v2": No such file or directory
could not load library "seal_variance_cxx": ERROR:  could not access file
"seal_variance_cxx": No such file or directory
could not load library "seal_diff_benchmark": ERROR:  could not access file
"seal_diff_benchmark": No such file or Directory

Running:
SELECT proname, probin, pronamespace 
FROM pg_proc 
WHERE probin IS NOT NULL AND pronamespace = 2200

Results in:

| proname                  | probin                       | pronamespace
| bytea_size                | randomness              | 2200 
| sum_of_numbers      | myfunc                     | 2200 
| seal_diff_cpp            | seal_diff_cpp             | 2200 
| seal_mean_cxx_v2    | seal_mean_cxx_v2    | 2200 
| seal_variance_cxx     | seal_variance_cxx     | 2200 
| seal_diff_benchmark | seal_diff_benchmark  | 2200 
| seal_mean_cxx         | seal_mean_cxx         | 2200 

All the 7 problematic libraries (.so) are manually created c extension
functions. I can't just move them to /usr/pgsql-11/lib/ because they we
compiled with PostgresSQL10 and not 11.

How can I resolve this issue? How can I delete them properly if porting them
to 11 is a painful process? Deleting them directly form /usr/pgsql-10/lib/
doesn't help.



--
Sent from: https://www.postgresql-archive.org/PostgreSQL-general-f1843780.html



pgsql-general by date:

Previous
From: David Steele
Date:
Subject: Re: Pgbackrest restore options
Next
From: Adrian Klaver
Date:
Subject: Re: Checking for Presence of Required Libraries Fails duringPostgreSQL Upgrade