> Bruce Momjian wrote: > Tom Lane wrote: >> Bruce Momjian writes: >>> One question I have is why we even bother to allow the database >>> username to be specified? Shouldn't we just hard-code that to >>> 'postgres'? >> >> Only if you want to render pg_upgrade unusable by a significant >> fraction of people. "postgres" is not the hard wired name of the >> bootstrap superuser. > > I was really wondering if I should be using that hard-coded name, > rather than allowing the user to supply it. They have to compile in > a different name, and I assume that name is accessible somewhere. At home, on my ubuntu machine, I built and ran initdb without specifying a superuser. It used my OS login of "kevin". Then, test=# \du List of roles Role name | Attributes | Member of -----------+------------------------------------------------+-------- --- kevin | Superuser, Create role, Create DB, Replication | {}
test=# create user xxx superuser; CREATE ROLE test=# \c test xxx You are now connected to database "test" as user "xxx". test=# alter user kevin rename to yyy; ALTER ROLE test=# \du List of roles Role name | Attributes | Member of -----------+------------------------------------------------+-------- --- xxx | Superuser, Replication | {} yyy | Superuser, Create role, Create DB, Replication | {} If I run pg_upgrade now, what will it pick? How? -Kevin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers