Search Postgresql Archives

Re: pg_upgrade Python version issue on openSUSE

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

 



Hi Tom,

> On 26. Sep, 2020, at 16:07, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
> 
> =?utf-8?Q?Paul_F=C3=B6rster?= <paul.foerster@xxxxxxxxx> writes:
>> seems, I found some kind of solution:
> 
>> - before running "pg_upgrade --check -k":
>>  drop extension plpythonu;
>> - run pg_upgrade
>> - after the upgrade:
>>  create extension plpython3u;
> 
>> Is this the correct way?
> 
> If you had plpythonu installed before, that's a plausible thing
> to do.  (There was discussion some time ago about making the
> python-2-to-3 transition less painful for users, but we failed
> to come to any consensus about how; so manual fixes like this
> are going to be needed for a lot of people.)
> 
> However, I don't understand how "drop extension plpythonu"
> worked for you, given your previous query showing that
> that extension wasn't installed.

just checked with another 12.4. It's the same:

postgres=# select * from pg_available_extension_versions where installed;
  name   | version | installed | superuser | relocatable |   schema   | requires |                           comment                            
---------+---------+-----------+-----------+-------------+------------+----------+--------------------------------------------------------------
 plperlu | 1.0     | t         | t         | f           | pg_catalog |          | PL/PerlU untrusted procedural language
 dblink  | 1.2     | t         | t         | t           |            |          | connect to other PostgreSQL databases from within a database
 plpgsql | 1.0     | t         | f         | f           | pg_catalog |          | PL/pgSQL procedural language
 plperl  | 1.0     | t         | f         | f           | pg_catalog |          | PL/Perl procedural language
(4 rows)

postgres=# drop extension plpythonu ;
DROP EXTENSION
postgres=# create extension plpython3u ;
CREATE EXTENSION

The "plpython" and "plpython3u" for the drop and create extension statements came by entering "plpy" and then pressing tab. So PostgreSQL knew about them. Still, as you can see, I could drop pypythonu again though it did not appear in the query. After the create extension, it appears as it should:

postgres=# select * from pg_available_extension_versions where installed;
    name    | version | installed | superuser | relocatable |   schema   | requires |                           comment                            
------------+---------+-----------+-----------+-------------+------------+----------+--------------------------------------------------------------
 plperlu    | 1.0     | t         | t         | f           | pg_catalog |          | PL/PerlU untrusted procedural language
 dblink     | 1.2     | t         | t         | t           |            |          | connect to other PostgreSQL databases from within a database
 plpython3u | 1.0     | t         | t         | f           | pg_catalog |          | PL/Python3U untrusted procedural language
 plpgsql    | 1.0     | t         | f         | f           | pg_catalog |          | PL/pgSQL procedural language
 plperl     | 1.0     | t         | f         | f           | pg_catalog |          | PL/Perl procedural language
(5 rows)

Is this a bug in 12.4 not showing the extension?

Cheers,
Paul





[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