Am 20.02.20 19:32 schrieb(en) Tom Lane:
This is, actually, not very surprising. You dropped the old function while clients were using it. The new function is a completely unrelated object, even if it happens to have the same name.
Yes, I agree that this was not a too clever approach…
It does seem a bit annoying that something in plpgsql is apparently doing a fresh catalog lookup to find information that likely was already cached at the start of function execution.
OK, but after fully stopping the daemon via systemctl (which of course disconnects all clients) and re-starting it, the cache is empty, isn't it? So the client after re-connecting /should/ find the proper function? In my case the full restart did *not* help, but produced the same error again afterwards! I didn't reboot the whole box, though. This led me to the assumption that the database was “somehow” damaged. Thanks, Albrecht.
Attachment:
pgpCiLlpg7Bhr.pgp
Description: PGP signature