Hi Adrian,

> On 26. Sep, 2020, at 17:07, Adrian Klaver <adrian.kla...@aklaver.com> wrote:
> 
> I believe the issue is here:
> 
> select * from pg_pltemplate ;
> 
> 
> plpythonu  | f           | f             | plpython_call_handler  | 
> plpython_inline_handler  | plpython_validator  | $libdir/plpython2 | NULL
> plpython2u | f           | f             | plpython2_call_handler | 
> plpython2_inline_handler | plpython2_validator | $libdir/plpython2 | NULL
> plpython3u | f           | f             | plpython3_call_handler | 
> plpython3_inline_handler | plpython3_validator | $libdir/plpython3 | NULL
> 
> 
> The default plpython is plpythonu and that points at $libdir/plpython2.
> 
> The instructions here:
> 
> https://www.postgresql.org/docs/12/plpython-python23.html
> 
> offer a work around:
> 
> "Daredevils, who want to build a Python-3-only operating system environment, 
> can change the contents of pg_pltemplate to make plpythonu be equivalent to 
> plpython3u, keeping in mind that this would make their installation 
> incompatible with most of the rest of the world."

sounds like:

update pg_pltemplate
set
    tmplhandler='plpython3_call_handler',
    tmplinline='plpython3_inline_handler',
    tmplvalidator='plpython3_validator',
    tmpllibrary='$libdir/plpython3'
where
    tmplname='plpythonu';

And that sounds somewhat dangerous to me, especially if I take the comment on 
the plpython-python23 page into account: "keeping in mind that this would make 
their installation incompatible with most of the rest of the world."

I'd rather not...

Cheers,
Paul

Reply via email to