Re: Making type Datum be 8 bytes everywhere

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Joe Conway <mail(at)joeconway(dot)com>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, Peter Eisentraut <peter(at)eisentraut(dot)org>, Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers(at)lists(dot)postgresql(dot)org, Robert Haas <robertmhaas(at)gmail(dot)com>
Subject: Re: Making type Datum be 8 bytes everywhere
Date: 2025-08-09 16:44:51
Message-ID: 2488587.1754757891@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Joe Conway <mail(at)joeconway(dot)com> writes:
> On 8/8/25 21:14, Tom Lane wrote:
>> I have just realized that this proposal has a rather nasty defect.
>> ...
>> On the positive side, even if there are any SP-GiST opclasses that
>> are at risk, the population of installations using them on 32-bit
>> installs has got to be pretty tiny.

> I bet it is indistinguishable from zero...

That's my bet too.

>> And the worst-case answer is that you'd have to reindex such indexes
>> after pg_upgrade.

> ...and this seems like a reasonable answer if anyone pops up.

>> Do we think that making this change is valuable enough to justify
>> taking such a risk?

> yes +1

I've now fleshed out the patch series with some cleanup of code that's
been rendered dead. The 0001 patch is nearly the same as before,
but thanks to all the work Peter did, it doesn't trigger a pile of
gcc warnings (at least, not for me).

regards, tom lane

Attachment Content-Type Size
v1-0001-Make-type-Datum-be-8-bytes-wide-everywhere.patch text/x-diff 7.5 KB
v1-0002-Grab-the-low-hanging-fruit-from-forcing-sizeof-Da.patch text/x-diff 23.2 KB
v1-0003-Grab-the-low-hanging-fruit-from-forcing-USE_FLOAT.patch text/x-diff 27.4 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2025-08-09 17:18:39 plpython: Remove support for major version conflict detection
Previous Message Andrey Borodin 2025-08-09 15:53:54 Re: VM corruption on standby