Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Date: 2014-12-23 15:46:11
Message-ID: 20141223154611.GE32020@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On 2014-12-23 10:40:15 -0500, Robert Haas wrote:
> On Tue, Dec 23, 2014 at 10:26 AM, Alvaro Herrera
> <alvherre(at)2ndquadrant(dot)com> wrote:
> > Tom Lane wrote:
> >> Again, I suppose I should have objected earlier, but I really seriously
> >> doubt that this is a good idea.
> >
> > Ugh. I thought we had a consensus that this was the accepted way
> > forward; that's my reading of the old thread,
> > http://www.postgresql.org/message-id/flat/20141016133218(dot)GW28859(at)tamriel(dot)snowman(dot)net#20141016133218(dot)GW28859@tamriel.snowman.net
> >
> > Breaking clients was considered acceptable, which is why some of these
> > functions were introduced. There were some differing opinions; Simon
> > for instance suggested the use of an array rather than a bitmask, but
> > that would have broken clients all the same.
> >
> > If there's strong opposition to this whole line of development, I can
> > revert. Anyone else wants to give an opinion?
>
> I would have preferred (and I believe argued for) keeping the existing
> catalog representation for existing attributes and using a bitmask for
> new ones, to avoid breaking client code. But I am not sure if that's
> actually the best decision.

I personally think in this case the clear break is slightly better than
having different styles of representation around for a long while.

> I find Tom's concern about needing more
> than 64 attributes to be ill-founded; I can't really see that
> happening on any timescale that matters.

I personally would prefer a 'custom' type to represent the
permissions. Internally that could very well be current bitmask, but the
external representation could be more complex (i.e. some textual
representation). That'd make it easy to make the representation wider/more
complex if needed.

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2014-12-23 15:51:32 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Previous Message Robert Haas 2014-12-23 15:40:15 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2014-12-23 15:51:32 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Previous Message Alvaro Herrera 2014-12-23 15:42:47 Re: pgbench -f and vacuum