Re: proposal: regrole type?

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Pavel Stehule <pavel.stehule@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2012-12-25T18:57:52Z
Lists: pgsql-hackers
Pavel Stehule <pavel.stehule@gmail.com> writes:
> * We can reduce to half lot of functions \df has_* (84 functions)

Not without breaking existing queries.  A function taking regrole might
look like it substitutes for one taking a text-string user name as long
as you only pass literal constants to it, but as soon as you pass
non-constants you'll find out different.  (Unless your plan is to also
create an implicit cast from text to regrole, which strikes me as a
seriously bad idea.)

The reason we've not been more aggressive about using the OID-alias
pseudotypes is exactly that they're not a cure-all.  Otherwise we would
already have about a dozen more of them.  I don't think it's really
worth it: the notational savings is pretty marginal and the impact on
application namespace should not be ignored.  (Keep in mind that any new
system type causes problems for similarly-named user tables.)

			regards, tom lane