On 9/27/20 2:00 AM, Paul Förster wrote:
> Hi Adrian,
>
>> On 27. Sep, 2020, at 00:09, Adrian Klaver <adrian.klaver@aklaver.com> wrote:
>> Could it be that at some point in these instances history plpython* where installed as CREATE LANGUAGE and you are
dealingwith the vestiges of that?
>
> I do know for sure that that never happened because the database clusters with this effect are my personal test
databasesand I never used Python. I did some tests with plperl and plperlu, though, but never python, because I don't
"speak"python.
>
> What is possible is, those databases are clones of a Patroni cluster database (primary) I used to experiment with. I
justcopied them to new PGDATAs back then and changed PGPORT of course. I know, I could have done initdb and pg_dumpall
butjust copying the whole database cluster was the fast way to go, even more so as the PostgreSQL software was exactly
thesame. Just PGDATA and PGPORT changed for the clone. From what I know this is a perfectly legal way to do it as long
asthe source database cluster is properly shut down during the copy process.
>
> Maybe Patroni did it then implicitly? I'm not sure how Patroni works internally but I know that it is written in
Python.Maybe it does install something in the database which I don't know and can't find? I tried searching for
anythingowned by "replicator" but can't find anything.
>
>> Are you able to go back and reconstruct them and then do \dL (languages) and \dx (extensions)?
>
> The machine in question is my personal test box at home. I don't do regular backups there. If I break something I
justreinstall it. So going back into the past with backups is not possible for me. The only thing that I kept running a
longtime now is the Patroni cluster because I have some data stored in it. But this is the only "history" there is.
However,\dx and \dL do not show any Python extension or language on the Patroni cluster too, which is still 12.4.
Does:
SELECT
lanname, proname, probin
FROM
pg_proc
JOIN
pg_language
ON
pg_language.oid = pg_proc.prolang
WHERE
pg_language.lanname='plpythonu'
AND
probin IS NOT NULL;
show anything? This would need to be repeated for each cluster in database.
>
> Still, thanks for helping.
>
> Cheers,
> Paul
>
--
Adrian Klaver
adrian.klaver@aklaver.com