Re: How to add function schema in search_path in option definitio

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Lorusso Domenico <domenico(dot)l76(at)gmail(dot)com>
Cc: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: How to add function schema in search_path in option definitio
Date: 2023-07-11 20:50:49
Message-ID: CAKFQuwZo8B9PMdBL2o7Tzr9HuDfobBk5XpPWrsuf4Lv44uP3Vw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Sat, Jul 8, 2023 at 10:00 AM Lorusso Domenico <domenico(dot)l76(at)gmail(dot)com>
wrote:

> Hello Adrian,
> I've created a schema to handle some specific features.
> In the schema there are a couple of tables used by many functions (more
> than 20).
> In other words, I've created a schema as a package (as suggested in many
> points).
>
> I wish, in a function of this schema, to be able to call each other
> functions of this schema without adding the schema name in the call
> instruction.
>

PostgreSQL isn't really designed for that - especially if you aren't
formally creating an extension but simply putting stuff into a schema.

The script code you use to install your makeshift package should handle
dynamic schema naming. It's a pain, do you really need to allow the name
of the schema to be unknown at installation time?

You should read up on how extensions are implemented - you are basically
writing your own CREATE EXTENSION implementation.

https://www.postgresql.org/docs/current/extend-extensions.html#EXTEND-EXTENSIONS-RELOCATION

In any case, there really aren't any smarts here: explicitly schema qualify
your function calls and forget that search_path even exists. Unless you
are writing custom operators, and even then, consider search_path to be
evil.

David J.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Johnathan Tiamoh 2023-07-11 21:45:13 Re: Need Help On Upgrade
Previous Message Adrian Klaver 2023-07-11 20:17:16 Re: How to add function schema in search_path in option definitio