Re: INOUT parameters in procedures - Mailing list pgsql-hackers

From Merlin Moncure
Subject Re: INOUT parameters in procedures
Date
Msg-id CAHyXU0z-B9vn3_MzM8CgpXA+JNGnjT6cd35ftxxSb3CV6c-Jkg@mail.gmail.com
Whole thread Raw
In response to Re: INOUT parameters in procedures  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: INOUT parameters in procedures  (Pavel Stehule <pavel.stehule@gmail.com>)
List pgsql-hackers
On Tue, Mar 20, 2018 at 9:09 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
>> Edit: In one case, after dropping the function and recreating it, I
>> got the procedure to return 0 where it had not before, so this smells
>> like a bug.
>> postgres=# call p();
>> 2018-03-20 09:04:50.543 CDT [21494] ERROR:  function p() does not
>> exist at character 6
>> 2018-03-20 09:04:50.543 CDT [21494] HINT:  No function matches the
>> given name and argument types. You might need to add explicit type
>> casts.
>> 2018-03-20 09:04:50.543 CDT [21494] STATEMENT:  call p();
>> ERROR:  function p() does not exist
>> LINE 1: call p();
>>              ^
>> HINT:  No function matches the given name and argument types. You
>> might need to add explicit type casts.
>> Time: 0.297 ms
>> postgres=# create or replace procedure p(a inout int default 7) as $$
>> begin return; end; $$ language plpgsql;
>> CREATE PROCEDURE
>> Time: 1.182 ms
>> postgres=# call p();
>>  a
>> ───
>>  0
>> (1 row)
>
>
> I wrote patch

Confirmed this fixes the issue.

merlin


pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: INOUT parameters in procedures
Next
From: Konstantin Knizhnik
Date:
Subject: Re: Lack of T_TargetEntry in exprType function