createuser patch

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Patches <pgsql-patches(at)postgresql(dot)org>
Subject: createuser patch
Date: 2005-08-12 16:37:22
Message-ID: 20050812163722.GA16834@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Hackers,

Here is a patch to createuser, to make it handle some of the options of
CREATE ROLE.

While developing it, I noticed it takes an annoying number of options,
or ask an annoying number of questions. I thought about producing a
version called "createrole" which would have all the options and ask
about them if not supplied, but if called with the name "createuser" (a
symlink or hardlink) it would assume defaults for some of them, like
INHERIT and LOGIN. However I don't see this pattern applied elsewhere
in our programs, so I'm not sure we want to establish this precedent.

Also, note that the "inherit" option uses "-y" as the short option,
because all the other good letters are taken. In particular, -i is
taken by the now obsolete SYSID. -i is accepted but silently ignored.
I actually wondered if mantaining backwards compatibility was so
important as in SQL -- if it's not, then we can get rid of -i as SYSID,
and use it for INHERIT.

Also, note that -a/-A ("adduser") is an undocumented alias for -s/-S,
just like CREATEUSER is an alias for SUPERUSER.

There are some options for CREATE ROLE which are not supported in
createuser, like IN ROLE, ROLE, ADMIN, VALID UNTIL. The old one didn't
handle IN GROUP nor VALID UNTIL either, so I don't see this as a big
problem.

Comments? After things have settled I'll generate the doc patch.

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
Management by consensus: I have decided; you concede.
(Leonard Liu)

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Alvaro Herrera 2005-08-12 16:43:25 Re: createuser patch
Previous Message Bruce Momjian 2005-08-12 16:12:17 Re: [HACKERS] data on devel code perf dip