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

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Stephen Frost <sfrost(at)snowman(dot)net>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Date: 2014-12-23 16:07:32
Message-ID: 32297.1419350852@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Stephen Frost <sfrost(at)snowman(dot)net> writes:
> * Tom Lane (tgl(at)sss(dot)pgh(dot)pa(dot)us) wrote:
>> I'd have gone with just adding more bool columns as needed.

> I don't think I was the only one concerned that adding a bunch of new
> columns would bloat the size of pg_authid and the C structure behind it,
> but I'm not remembering offhand who else considered it.

Lessee, as of 9.4 pg_authid required 76 bytes per row, plus row header
overhead that'd have probably pushed it to 104 bytes per row (more if
you had non-null rolpassword or rolvaliduntil). If we add as many as 20
more booleans we'd be at 124 bytes per row, whereas with this approach
we'd have, well, 104 bytes per row. I'm not seeing much benefit to
justify such a drastic change of approach.

regards, tom lane

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2014-12-23 16:08:51 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Previous Message Robert Haas 2014-12-23 16:02:42 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2014-12-23 16:08:51 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes
Previous Message Robert Haas 2014-12-23 16:02:42 Re: [COMMITTERS] pgsql: Use a bitmask to represent role attributes