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@aklaver.com