Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tG08C-000LV5-DO for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Nov 2024 18:17:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tG089-008rrR-Tc for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Nov 2024 18:17:45 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tG089-008rrF-Jj for pgsql-hackers@lists.postgresql.org; Tue, 26 Nov 2024 18:17:45 +0000 Received: from sss.pgh.pa.us ([68.162.161.243]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tG086-0041GU-Q4 for pgsql-hackers@postgresql.org; Tue, 26 Nov 2024 18:17:44 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 4AQIHTkv1701257; Tue, 26 Nov 2024 13:17:29 -0500 From: Tom Lane To: Bertrand Drouvot cc: "David E. Wheeler" , Noah Misch , Aleksander Alekseev , pgsql-hackers , Marco Slot , Alvaro Herrera , Christoph Berg , Pavan Deolasee Subject: Re: Potential ABI breakage in upcoming minor releases In-reply-to: References: <2443809.1731683394@sss.pgh.pa.us> <20241115175223.68.nmisch@google.com> <2483970.1731702561@sss.pgh.pa.us> <2500050.1731705196@sss.pgh.pa.us> <900DE0C9-48C4-474C-BDC9-AD495D8D3F59@justatheory.com> <2638276.1731717056@sss.pgh.pa.us> <1576843.1732586210@sss.pgh.pa.us> Comments: In-reply-to Bertrand Drouvot message dated "Tue, 26 Nov 2024 05:16:05 +0000" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1701255.1732645049.1@sss.pgh.pa.us> Content-Transfer-Encoding: quoted-printable Date: Tue, 26 Nov 2024 13:17:29 -0500 Message-ID: <1701256.1732645049@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Bertrand Drouvot writes: > On Mon, Nov 25, 2024 at 08:56:50PM -0500, Tom Lane wrote: >> ... (But consider both 32-bit and 64-bit cases when >> deciding what is "padding".) > What about providing a decision table to help considering for 32-bit, so= mething > like (proposed in [1])? > 64-bit hole size | use on 32-bit? > -----------------|--------------- > <=3D3 bytes | safe to use > 4 bytes | don't use > 5-7 bytes | use first (hole_size - 4) bytes only Mumble ... that seems too simplistic to me. Admittedly, I can't offhand think of an inter-platform variation that would move field offsets by something other than a multiple of 4 bytes, so maybe it's correct. In any case, I think the purpose of these notes is just to remind people of issues to think about, not to provide complete solution recipes, so I'd rather not go into that much detail. regards, tom lane