Re: plpgsql_check_function issue after upgrade

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: shashidhar Reddy <shashidharreddy001(at)gmail(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: plpgsql_check_function issue after upgrade
Date: 2022-11-29 16:28:16
Message-ID: CAFj8pRAf3a1CSEUeUxCocEN5umepo75qR+J6_05XzUEUFFZm3Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

út 29. 11. 2022 v 16:37 odesílatel shashidhar Reddy <
shashidharreddy001(at)gmail(dot)com> napsal:

> Plogsql check version is 2.2 and one more finding is before calling the
> function if we drop and recreate the plpgsql_check extension there is no
> issue, but each time we can't drop and create.
>

Maybe you need to run ALTER EXTENSION plpgsql_check UPDATE before first
usage in pg 13

If the extension works after re-installation, then the problem is not in an
extension.

> On Tue, 29 Nov, 2022, 7:19 pm shashidhar Reddy, <
> shashidharreddy001(at)gmail(dot)com> wrote:
>
>> Hello Pavel,
>>
>> This is the function causing the issue on all servers, and also i noticed
>> when I use *plpgsql_check_function *in any function I am facing the same
>> issue.
>>
>>
>> On Tue, Nov 29, 2022 at 6:43 PM Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
>> wrote:
>>
>>> Hi
>>>
>>>
>>> út 29. 11. 2022 v 13:49 odesílatel shashidhar Reddy <
>>> shashidharreddy001(at)gmail(dot)com> napsal:
>>>
>>>> Hello,
>>>>
>>>> Recently we have upgraded postgres from version 12 to 13 and upgraded plpgsql_check
>>>> to the latest version but after upgrade when calling the below function
>>>> causing postgres restart .
>>>>
>>>> CREATE OR REPLACE FUNCTION pro.po_check(
>>>> )
>>>> RETURNS void
>>>> LANGUAGE 'plpgsql'
>>>> COST 100
>>>> VOLATILE SECURITY DEFINER PARALLEL UNSAFE
>>>> AS $BODY$
>>>> DECLARE
>>>> BEGIN
>>>>
>>>> PERFORM p.oid, n.nspname, p.proname, plpgsql_check_function(p.oid)
>>>> FROM pg_catalog.pg_namespace n
>>>> JOIN pg_catalog.pg_proc p ON pronamespace = n.oid
>>>> JOIN pg_catalog.pg_language l ON p.prolang = l.oid
>>>> WHERE l.lanname = 'plpgsql' AND p.prorettype <> 2279
>>>> and upper(n.nspname) like upper('Pro');
>>>>
>>>> END;
>>>> $BODY$;
>>>>
>>>> and the error in syslogs shows
>>>> kernel: [93631.415790] postgres[86383]: segfault at 80 ip
>>>> 00007f07f3e3eefd sp 00007fffcf1db500 error 4 in
>>>> plpgsql_check.so[7f07f3e2e000+34000]
>>>>
>>>
>>> it can be a bug in plpgsql_check. But I am not able to fix it without
>>> some information. Can you send the reproducer (minimal example of your
>>> code, that reproduce this error)?
>>>
>>> Regards
>>>
>>> Pavel
>>>
>>>>
>>>> --
>>>> Shashidhar
>>>>
>>>
>>
>> --
>> Shashidhar
>>
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2022-11-29 16:31:19 Re: Seeking the correct term of art for the (unique) role that is usually called "postgres"—and the mental model that underlies it all
Previous Message Harmen 2022-11-29 15:46:53 Re: delete statement returning too many results