Re: Making type Datum be 8 bytes everywhere

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Joe Conway <mail@joeconway.com>, Michael Paquier <michael@paquier.xyz>, Andres Freund <andres@anarazel.de>, pgsql-hackers@lists.postgresql.org, Robert Haas <robertmhaas@gmail.com>
Date: 2025-08-13T19:29:59Z
Lists: pgsql-hackers
On 12.08.25 21:48, Tom Lane wrote:
> PFA v2 with these changes.  I feel like this is pretty close to
> committable now.

This looks good to me.

One additional comment: In network.c and varlena.c there are a couple of 
comments that match /4 byte datum/ that talk about abbreviation support 
in that circumstance.  Those should probably be removed or reworded.




Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Avoid faulty alignment of Datums in build_sorted_items().

  2. Grab the low-hanging fruit from forcing USE_FLOAT8_BYVAL to true.

  3. Grab the low-hanging fruit from forcing sizeof(Datum) to 8.

  4. Make type Datum be 8 bytes wide everywhere.

  5. Mop-up for Datum conversion cleanups.