"David G. Johnston" <david.g.johns...@gmail.com> writes: > The root issue, IMO, is that all packagers have settled on the convention > of using Postgres for the superuser name, so if one only ever sees that, it > is easy to assume it is some kind of default of the software itself. In > the face of consistent evidence, people not reading the documentation is my > supposed assumption for their ignorance of this point. But reading the > docs, it is clear how the system really works (I.e., the name of the > bootstrap superuser comes is derived at initdb time from the environment > executing initdb).
I agree that the docs are not incorrect as they stand, but maybe they could be phrased a little more clearly. The "Customarily," bit is perhaps too terse. I'm thinking about wording like This role is always a “superuser”, and by default it will have the same name as the operating system user that initialized the database cluster, unless another name is specified while running initdb. It is common, but not required, to arrange for this role to be named postgres. regards, tom lane