Re: table AM option passing - Mailing list pgsql-hackers

From Nathan Bossart
Subject Re: table AM option passing
Date
Msg-id absWdP4uVsmiDW9A@nathan
Whole thread Raw
In response to Re: table AM option passing  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
On Tue, Mar 17, 2026 at 05:09:49PM -0400, Andres Freund wrote:
> Personally I object to the existence of the bits* types, to me they're just
> noise over using the corresponding unsigned integer types. One more thing that
> one has to just know what it means without there being any actual improved
> type checking or such. It's not like using bits* would make it any easier to
> make the underlying type a struct or such (which is different to
> e.g. TransactionId, we could probably replace that with a struct without crazy
> amounts of trouble).

Yeah, I don't see why you'd prefer bits32 over uint32.  If anything, uint32
is probably less confusing because most hackers will have used it before.
AFAICT the bits* types are a relic of the 80s, and there used to be other
types like bool8 and word32, all of which were just uint* behind the
scenes.  Those were removed in 2004 by commit ca7a1f0c86.  I assume bits*
was left behind because it was still in use.

> I think we should just rip the bits* types out and replace them with the
> underlying types.

+1.  If there seems to be consensus, I'm happy to write the patch.

-- 
nathan



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: SQL Property Graph Queries (SQL/PGQ)
Next
From: Nathan Bossart
Date:
Subject: remove bits* types