Thread: missing schema qualifications in psql

missing schema qualifications in psql

From
Peter Eisentraut
Date:
While psql is careful to schema-qualify all references to built-in
objects (pg_catalog.*), it completely neglects to do this for built-in
operators, which can lead to surprising misbehaviors when users have
created custom operators.  Here is a patch to address that.  It will
need a bit of testing.

pg_dump has similar problems, probably other components as well.

Attachment

Re: missing schema qualifications in psql

From
"Greg Sabino Mullane"
Date:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160


> While psql is careful to schema-qualify all references to built-in
> objects (pg_catalog.*), it completely neglects to do this for built-in
> operators, which can lead to surprising misbehaviors when users have
> created custom operators.  Here is a patch to address that.  It will
> need a bit of testing.

Er...wouldn't this only be a problem if someone creates custom operators 
*and* forces pg_catalog to the end of the search_path? Wouldn't an easier 
solution be to prepend pg_catalog to the search_path when doing backslash 
commands?

- -- 
Greg Sabino Mullane greg@turnstep.com
PGP Key: 0x14964AC8 201004010941
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAku0oqQACgkQvJuQZxSWSsiJmACghUKR/i+uyJ2n+beuAid4w432
s0oAnArOf1npuMF/7QJ87ZVmSYMlJTRp
=/+yd
-----END PGP SIGNATURE-----




Re: missing schema qualifications in psql

From
Tom Lane
Date:
Peter Eisentraut <peter_e@gmx.net> writes:
> While psql is careful to schema-qualify all references to built-in
> objects (pg_catalog.*), it completely neglects to do this for built-in
> operators,

That's intentional because of the utter lack of readability that
results if you try to use OPERATOR() everywhere ...
        regards, tom lane


Re: missing schema qualifications in psql

From
Robert Haas
Date:
On Thu, Apr 1, 2010 at 9:59 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Peter Eisentraut <peter_e@gmx.net> writes:
>> While psql is careful to schema-qualify all references to built-in
>> objects (pg_catalog.*), it completely neglects to do this for built-in
>> operators,
>
> That's intentional because of the utter lack of readability that
> results if you try to use OPERATOR() everywhere ...

I was mulling over in my head the possibility that the date on which
this patch was posted was deliberate...

...Robert