Re: [BUGS] BUG #14649: Function Namespace Resolution Bug - Mailing list pgsql-bugs

From Jeremy Cowgar
Subject Re: [BUGS] BUG #14649: Function Namespace Resolution Bug
Date
Msg-id C85A4615-B255-4D73-B0E2-774980C542A8@cowgar.com
Whole thread Raw
In response to Re: [BUGS] BUG #14649: Function Namespace Resolution Bug  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [BUGS] BUG #14649: Function Namespace Resolution Bug  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
Why does it find the initial function just fine in the public namespace, but the method it calls it can not find, which
isin the same namespace as the calling function? 

Jeremy Cowgar

> On May 12, 2017, at 2:13 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> jeremy@cowgar.com writes:
>> In short, when a CHECK on a column in a different schema references a
>> function in public that references another function in public implicitly,
>> there is confusion. The workaround is to prefix the function calls with the
>> schema.
>
> I don't see any PG bug here.  If you don't schema-qualify the function
> reference, then it is dependent on the current search_path, and pg_dump/
> pg_restore have their own ideas about how to set search_path.  Even if
> those two somehow magically intuited what search_path you're expecting,
> this coding would still be fragile since some other user might use a
> different search_path than you while accessing the table.  The schema
> qualification isn't a "workaround", it's just good coding practice.
>
>             regards, tom lane



--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: [BUGS] BUG #14650: pg_dump -c fails when 'public' schema doesn't exist
Next
From: Tom Lane
Date:
Subject: Re: [BUGS] BUG #14649: Function Namespace Resolution Bug