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