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.96) (envelope-from ) id 1vqkSU-00H8a1-1Q for pgsql-hackers@arkaria.postgresql.org; Fri, 13 Feb 2026 04:07:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vqkSS-00CKtd-2q for pgsql-hackers@arkaria.postgresql.org; Fri, 13 Feb 2026 04:07:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vqkSS-00CKtV-1v for pgsql-hackers@lists.postgresql.org; Fri, 13 Feb 2026 04:07:09 +0000 Received: from fout-b5-smtp.messagingengine.com ([202.12.124.148]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vqkSR-00000000QSr-1Q5t for pgsql-hackers@lists.postgresql.org; Fri, 13 Feb 2026 04:07:09 +0000 Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45]) by mailfout.stl.internal (Postfix) with ESMTP id 06B6F1D00198; Thu, 12 Feb 2026 23:07:05 -0500 (EST) Received: from phl-frontend-03 ([10.202.2.162]) by phl-compute-05.internal (MEProxy); Thu, 12 Feb 2026 23:07:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paquier.xyz; h= cc:cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm3; t=1770955625; x=1771042025; bh=Nhr1X34WFD oBTSRD4UxafPRvYP88bm5xr9vPBpb/liU=; b=jD8/YxfQu6Pu1SvIH6f/1dpCUa gyb1VY+Blc/qTdFMqqUW1xInU+lcZYjnRycRBs2w6bzj57CRF3uoI6ofATzyJYdn Ny7MwmyhlgputLQIa5TpGLT2b12bugNE70pCeRyaRqHoHRHNucDq0ey6Mq2Z8Gq2 DnwwliEi7MmhEZ0OVEOzpNyKBU0BA4NLVAIMv/ne5y5YvmekfmzCfajZXPcoPE/Y 9EHIlj4qO26YngZdlNiJZwwtX7tFuDuCQclKe+DntUNLn9g4GzO9JvU4EMVjqfqB IB529Tv8gYCxR1z9Ue8a8m2zKfDWbZzgSPsUEcs0upOpBhXFaN8CHgFso8xw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1770955625; x=1771042025; bh=Nhr1X34WFDoBTSRD4UxafPRvYP88bm5xr9v PBpb/liU=; b=qLJmec12TkdLZucaXfTG5DpGkTFqiX/WYieKhgJgnLdxVr4VeO3 ywsAafSWsMGoYzkXSzhM0HvqDWNbpmwJfr+cN0zqYNUWStt2mhHicGLrvvvnUf5e PIST6FK13xrqlmLHryLOh55ZeMzkFf09XZdYnmflk560hrzJt4cToCU7+a1oGR5i Lj37jVOk+sAAHXKM5Tf2Lkkv7lgzhzffSs4dk+TNxsAQvCfbfaW2gv41aNJDR7fQ /fU+uZxeF2+ZAhS+RrY2AUNgJlISuox4TKLDrzGVxc3ESf4EDbBd3sQ0tv+ubbMc +1UwmPM8bZRRZufHZKkiO701RiqpXq3uCnw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddvtdejvdehucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucgfrhhlucfvnfffucdljedtmdenucfjughrpeffhffvve fukfhfgggtuggjsehgtderredttddvnecuhfhrohhmpefoihgthhgrvghlucfrrghquhhi vghruceomhhitghhrggvlhesphgrqhhuihgvrhdrgiihiieqnecuggftrfgrthhtvghrnh epteelieefudffhffhtdetleeggeegfffhkeeuveetiefgudduvedutefggeeivdejnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhhitghhrg gvlhesphgrqhhuihgvrhdrgiihiidpnhgspghrtghpthhtohepvddpmhhouggvpehsmhht phhouhhtpdhrtghpthhtohepthhglhesshhsshdrphhghhdrphgrrdhushdprhgtphhtth hopehpghhsqhhlqdhhrggtkhgvrhhssehlihhsthhsrdhpohhsthhgrhgvshhqlhdrohhr gh X-ME-Proxy: Feedback-ID: i0fe9450f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 12 Feb 2026 23:07:04 -0500 (EST) Date: Fri, 13 Feb 2026 13:07:00 +0900 From: Michael Paquier To: Tom Lane Cc: pgsql-hackers@lists.postgresql.org Subject: Re: Our ABI diff infrastructure ignores enum SysCacheIdentifier Message-ID: References: <289125.1770913057@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="/wouElSZPOWvh1lt" Content-Disposition: inline In-Reply-To: <289125.1770913057@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --/wouElSZPOWvh1lt Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Feb 12, 2026 at 11:17:37AM -0500, Tom Lane wrote: > I discovered $SUBJECT while working on commits dbb09fd8e et al. > The point of those commits was to back-patch addition of a syscache > that previously existed only in v18+, so naturally I was concerned > about not breaking ABI by changing any existing syscache's ID. > I tested whether abidiff would bleat about it if I intentionally > changed an ID, and found that *it didn't*. Well. That's annoying. This one is important to be careful about. > As for SysCacheIdentifier, the root of the problem is that > SearchSysCache and friends are declared to take "int cacheId" > not "enum SysCacheIdentifier cacheId". Likely we should change > that in HEAD, but that'd be an actual not theoretical ABI break > (the enum's not necessarily int-width). Enforcing a type for this sounds like a good idea in the long term on HEAD, yes, even putting the ABI argument aside for a moment. I'd suggest the addition of an extra typedef in the code generated for=20 syscache_ids.h to save from a couple of enum markers in these declarations, once refactored to use the new enum type. > In the back branches > I'm thinking about adding a dummy function just for this purpose, > more or less as in the under-commented patch attached. >=20 > Thoughts? Adding a comment explaining why this function needs to exist would be good. -- Michael --/wouElSZPOWvh1lt Content-Type: application/pgp-signature; name=signature.asc -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEG72nH6vTowiyblFKnvQgOdbyQH0FAmmOo2QACgkQnvQgOdby QH1tAQ//aYFOxJnEbklSXpkVxONWJXRLDW+Wxr72LUqyPnScaQSK5MfoGSnjoECG pYUwNyDVjPgiKY88irN94nrSdj+l0c76GgsRvPWCvuKPUC38jG2SrzRmow8NKILN hke54EHtgWQgq6SW3VgzRQUvNyfgwPbLErFrHcV4+ynv2wZavrxtEVNYQVXCadjs ph3lN4bypr6LuH9/3NPLiL5EWzgzhU9V0mYvLB0nD0va4QEPiOMk6C+LZkKSSzAA ZoMylodG4m4Ma0c4FnH9sGVW+rXfhwNfMWkMTCfoJFfO90tRb1qrl1Xrys25Mzjq Bb1MkFEcJEZSiy6X4Zi5YBfv+7eeI85lLunGL9QWoXB8xjkCWrT2BpdoWSIFaht0 kpYirSJEKH+301JliWU0pa8gbVQvVDyFwCQviTONLYfG/2Dc7BpgsUSazkex7eH2 HnO9UBB1zcdGj40/YSzELewkYH9XleLz/9NAUIOAlTjWZBMm3GJ3yZ4W/5V7lUD2 tjRIhBHhcaX8iuKrhYijVIwnMxwZ8dSqbY24KH1xV6K7i1FNLQo4wmuVa1nTfWGN JcaXjXf3Hpe4kLQMKY9syBVXHK6/+bL9OTFbmPggyXiDMm8+9yu3TBd3KkhGyIMc wSgC8fP5gXmWQc5y1mCeBWqaYDO00Yhn0614CfoD1si7nu3APgU= =1mSn -----END PGP SIGNATURE----- --/wouElSZPOWvh1lt--