Web pgadmin.org
 Home 
 ·  ·  ·  ·  ·  ·  · 
Re: SQL for CREATE ROLE xxx SUPERUSER

Re: SQL for CREATE ROLE xxx SUPERUSER



dpage(at)postgresql(dot)org wrote:
Erwin Brandstetter wrote:
Hi Dave!

But is the line needed at all?
Clearly it works the same way with just "CREATE ROLE tester SUPERUSER".

It's not the same thing - pg_authid.rolsuper is the superuser flag, pg_authid.rolcatupdate is the catalog update flag. It cannot be set with CREATE or UPDATE ROLE, and is required for even a superuser to directly update the catalogs (postgres has it by default though).

The point is to cover the non-standard-setting of this flag.
_Every_ superuser gets this flag per default (at least in my tests in pg 8.1 and 8.2). The update line is redundant in this case. If I set the flag to false in the catalog, then the update line vanishes from the reverse engineered SQL. So, the present logic works for non-superusers, but is backwards for superusers.

Regards
Erwin



Home | Main Index | Thread Index

top