Thread: BUG #13861: Database dump does not load when both plpython2u and plpython3u functions are used
BUG #13861: Database dump does not load when both plpython2u and plpython3u functions are used
From
roman.vanicek@gmail.com
Date:
The following bug has been logged on the website: Bug reference: 13861 Logged by: Roman Vanicek Email address: roman.vanicek@gmail.com PostgreSQL version: 9.5.0 Operating system: Linux Ubuntu 15.10 Description: Use case: I have a database that uses both plpython2u and plpython3u extensions and some functions using them. When trying do restore the database on 9.5 server after dump, it produces fatal error. On postgresql-9.4: pg_dumpall > all.dump On postgresql-9.5: psql < all.dump Result: 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. server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. connection to server was lost
Re: BUG #13861: Database dump does not load when both plpython2u and plpython3u functions are used
From
Michael Paquier
Date:
On Wed, Jan 13, 2016 at 4:42 AM, <roman.vanicek@gmail.com> wrote: > Use case: > I have a database that uses both plpython2u and plpython3u extensions and > some functions using them. > > When trying do restore the database on 9.5 server after dump, it produces > fatal error. > > On postgresql-9.4: > pg_dumpall > all.dump > > On postgresql-9.5: > psql < all.dump > > Result: > 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. > server closed the connection unexpectedly > This probably means the server terminated abnormally > before or while processing the request. > connection to server was lost A problem has been fixed in this area a couple of days back: commit: db8fa56d6ad15621ad4f74667bfd59533408ce16 author: Tom Lane <tgl@sss.pgh.pa.us> date: Mon, 11 Jan 2016 19:55:39 -0500 Avoid dump/reload problems when using both plpython2 and plpython3. Commit 803716013dc1350f installed a safeguard against loading plpython2 and plpython3 at the same time, but asserted that both could still be used in the same database, just not in the same session. However, that's not actually all that practical because dumping and reloading will fail (since both libraries necessarily get loaded into the restoring session). pg_upgrade is even worse, because it checks for missing libraries by loading every .so library mentioned in the entire installation into one session, so that you can have only one across the whole cluster. You may want to just wait for 9.5.1. -- Michael