On Wed, Jun 2, 2021 at 3:46 PM Joel Jacobson <j...@compiler.org> wrote:

> If a database object is to be accessed unqualified by all users, isn't the
> 'public' schema a perfect fit for it? How will it be helpful to create
> different database objects in different schemas, if also adding all such
> schemas to the search_path so they can be accessed unqualified? In such a
> scenario you risk unintentionally creating conflicting objects, and
> whatever schema happened to be first in the search_path will be resolved.
> Seems insecure and messy to me.
>

Heh.  This is actually exactly what I wanted to do.

The use case is: version upgrades.  I want to be able to have a search_path
of something like 'pg_catalog, compat, public'.  That way we can provide
compatibility versions of newer functions in the "compat" schema, which get
taken over by pg_catalog when running on a newer version.  That way all the
compatibility crap is clearly separated from the stuff that should be in
"public".


.m

Reply via email to