Re: Re: Changing a schema's name with function1 calling function2

Поиск
Список
Период
Сортировка
От Wilma Wantren
Тема Re: Re: Changing a schema's name with function1 calling function2
Дата
Msg-id 9402749f7bc1ec4fb28989f72aa50676@mail.eclipso.de
обсуждение исходный текст
Ответ на Re: Changing a schema's name with function1 calling function2  (Adrian Klaver <adrian.klaver@aklaver.com>)
Ответы Re: Changing a schema's name with function1 calling function2
Список pgsql-general
Thank you all, and especially you, Adrian, for your answers.
However, I find the last suggestion too complicated. In Peter's words I had suggested a "magic variable"
__function_schema__which can be set as the search_path of a function to select - when executing the function - the
schemathe function actually is in. ("when executing", and not "when setting the search_path")   
This would have been very easy to use and in the implementation of __function_schema__ it would have been possible to
determineand cache the variable value (i.e. the schema of the function) directly when setting the search_path, and to
redetermineand cache the variable value only when the function's schema changes. 
Instead, I should now call the - actually diagnostic - function PG_ROUTINE_OID from the body of my function, with which
Iget the OID of my function in order to then determine the schema of my function and set it as search_path. I don't
thinkthat suits my requirements. 

I will therefore consider using a database change management system instead (e.g. sqitch, suggested by Adrian) and
definingthere what should happen when the schema name is changed, including the names of all functions whose
search_pathis to be changed. 

Many thanks again
Wilma


--- Ursprüngliche Nachricht ---
Von: Adrian Klaver <adrian.klaver@aklaver.com>
Datum: 27.12.2023 16:40:55
An: Kirk Wolak <wolakk@gmail.com>, Christophe Pettus <xof@thebuild.com>
Betreff: Re: Changing a schema's name with function1 calling function2

On 12/26/23 22:41, Kirk Wolak wrote:
> On Mon, Dec 25, 2023 at 1:47 PM Christophe Pettus <xof@thebuild.com

> <mailto:xof@thebuild.com>> wrote:
>
>
>
>      > On Dec 25, 2023, at 10:44, Adrian Klaver
>     <adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>>
wrote:
>      > Functions with same name in different schemas would need to
be
>     dealt with.
>
>     I think that's the primary use-case (at least, it would be for me),

>     and I don't see a convenient way of doing that.  Even a "get
OID of
>     current function" function would be useful here.
>
> And Pavel Already Created it:
> GET DIAGNOSTIC PID = PG_ROUTINE_OID ;

To be clear the above is for Postgres 16+ and for the plpgsql language only.


>
> If I understand the issue correctly.
>
> Kirk Out!

--
Adrian Klaver
adrian.klaver@aklaver.com



________________________________________________________
Your E-Mail. Your Cloud. Your Office. eclipso Mail Europe. https://www.eclipso.de





В списке pgsql-general по дате отправления:

Предыдущее
От: Adrian Klaver
Дата:
Сообщение: Re: Need help
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: Need help