Re: Making type Datum be 8 bytes everywhere
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Joe Conway <mail@joeconway.com>, Michael Paquier <michael@paquier.xyz>, pgsql-hackers@lists.postgresql.org, Robert Haas <robertmhaas@gmail.com>
Date: 2025-08-12T14:11:15Z
Lists: pgsql-hackers
Hi, On 2025-08-12 08:30:43 +0200, Peter Eisentraut wrote: > I'm also thinking, as a follow-on project, we could get rid of typbyval and > require that typbyval == (typlen > 0 && typlen <= 8). Something to think > about. We currently have types that aren't typbyval despite fitting those criteria: postgres[1606972][1]=# SELECT oid::regtype, typlen FROM pg_type WHERE typlen > 0 and typlen <= 8 and not typbyval; ┌──────────┬────────┐ │ oid │ typlen │ ├──────────┼────────┤ │ tid │ 6 │ │ macaddr │ 6 │ │ macaddr8 │ 8 │ └──────────┴────────┘ (3 rows) Greetings, Andres Freund
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Avoid faulty alignment of Datums in build_sorted_items().
- 09036dc71c68 19 (unreleased) landed
-
Grab the low-hanging fruit from forcing USE_FLOAT8_BYVAL to true.
- ee54046601de 19 (unreleased) landed
-
Grab the low-hanging fruit from forcing sizeof(Datum) to 8.
- 6aebedc38497 19 (unreleased) landed
-
Make type Datum be 8 bytes wide everywhere.
- 2a600a93c7be 19 (unreleased) landed
-
Mop-up for Datum conversion cleanups.
- 665c3dbba497 19 (unreleased) landed