Search Postgresql Archives

Re: 9.4 -> 9.5 upgrade problem when both python2 and python3 present

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Paul Jones <pbj@xxxxxxxxxx> writes:
> pg_upgrade complains about not being able to find $libdir/plpython3
> when upgrading a 9.4 cluster that has both python2 and python3 used.

No, that's not what the error message says:

> Could not load library "$libdir/plpython3"
> FATAL:  Python major version mismatch in session
> DETAIL:  This session has previously used Python major version 2, and it is now attempting to use Python major version 3.
> HINT:  Start a new session to use a different Python major version.

This is a restriction we put in place because libpython2 and libpython3
don't coexist nicely in the same address space.  Unfortunately, it makes
it problematic to restore a dump that contains references to both python2
and python3 functions.

It looks like pg_upgrade tries to load all libraries from functions in
any database in the old cluster into a single session in the new cluster,
which will fail in a scenario like this even if you keep python2 and
python3 functions rigorously separated into distinct databases.  I'm
not sure if we could weaken that test enough to work.

> I dropped the python2 database but still got the problem.

You must still have at least one database that contains references
to python2 (check pg_language to be sure).

			regards, tom lane


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux