On 5/1/20 3:03 PM, TalGloz wrote:
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.
Why not compile them against 11? Then follow step 5) here: https://www.postgresql.org/docs/12/pgupgrade.html
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.
If there are objects in the 10 database that depend on the libraries then I imagine deleting them won't help.
-- Sent from: https://www.postgresql-archive.org/PostgreSQL-general-f1843780.html
-- Adrian Klaver adrian.klaver@xxxxxxxxxxx