Re: INOUT parameters in procedures

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: INOUT parameters in procedures
Date: 2018-03-05 18:41:51
Message-ID: CAFj8pRAJAV_E6n-=+omAdX-TyqxZuhLxh3o-8rzQbP40iDwj8g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

2018-03-05 19:38 GMT+01:00 Peter Eisentraut <
peter(dot)eisentraut(at)2ndquadrant(dot)com>:

> On 3/5/18 11:00, Pavel Stehule wrote:
> > I am looking on attached code, and it looks pretty well. Can be really
> > nice if this code will be part of release 11, because it is very
> > interesting, important feature feature.
>
> Here is an updated patch, rebased on top of several recent changes, also
> added more documentation and tests in other PLs.
>
> > p.s. can be nice, if we allow same trick with calling of OUT variables
> > functions in plpgsql
> >
> > fx(in a, out x, out y) return int -- but requires some special mark
> >
> > do $$
> > declare x int, y int, z int;
> > begin
> > z := fx(10, x, y);
> > raise notice '% ....
> >
> > Then migration from Oracle can be really easy and friendly
>
> This would require some changes to how routines are looked up, because
> we currently ignore OUT parameters there. That code does not exist yet.
> But it's certainly a plausible extension for the future.
>

sure - this is topic for 12 release. But it can fix more than one issue
when PL/SQL code is migrated.

note: in this case we should to return one parameter more. Out parameters +
RETURN expression result.

>
> --
> Peter Eisentraut http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2018-03-05 18:44:35 Re: Optimize Arm64 crc32c implementation in Postgresql
Previous Message Peter Eisentraut 2018-03-05 18:38:39 Re: INOUT parameters in procedures