From: | Kirk Wolak <wolakk(at)gmail(dot)com> |
---|---|
To: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Cc: | Julien Rouhaud <rjuju123(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: possible proposal plpgsql GET DIAGNOSTICS oid = PG_ROUTINE_OID |
Date: | 2023-02-08 15:56:04 |
Message-ID: | CACLU5mSUj9cbGB9wQAABnOgYGUg95awzBhhTB1P79fL-NfYTDw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Feb 8, 2023 at 3:08 AM Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
wrote:
> hi
>
> st 8. 2. 2023 v 7:33 odesílatel Julien Rouhaud <rjuju123(at)gmail(dot)com>
> napsal:
>
>> On Tue, Feb 07, 2023 at 08:48:22PM +0100, Pavel Stehule wrote:
>> >
>> > GET DIAGNOSTICS _oid = PG_ROUTINE_OID;
>> > RAISE NOTICE '... % ... %', _oid, _oid::regproc::text;
>> >
>> > Do you think it can be useful feature?
>>
>> +1, it would have been quite handy in a few of my projects.
>>
>
> it can looks like that
>
> create or replace function foo(a int)
> returns int as $$
> declare s text; n text; o oid;
> begin
> get diagnostics s = pg_current_routine_signature,
> n = pg_current_routine_name,
> o = pg_current_routine_oid;
> raise notice 'sign:%, name:%, oid:%', s, n, o;
> return a;
> end;
> $$ language plpgsql;
> CREATE FUNCTION
> (2023-02-08 09:04:03) postgres=# select foo(10);
> NOTICE: sign:foo(integer), name:foo, oid:16392
> ┌─────┐
> │ foo │
> ╞═════╡
> │ 10 │
> └─────┘
> (1 row)
>
> The name - pg_routine_oid can be confusing, because there is not clean if
> it is oid of currently executed routine or routine from top of exception
>
> Regards
>
> Pavel
>
I agree that the name changed to pg_current_routine_... makes the most
sense, great call...
+1
From | Date | Subject | |
---|---|---|---|
Next Message | Justin Pryzby | 2023-02-08 15:56:44 | Re: typos |
Previous Message | Andres Freund | 2023-02-08 15:49:50 | Re: [PATCH] Make ON CONFLICT DO NOTHING and ON CONFLICT DO UPDATE consistent |