Re: Our ABI diff infrastructure ignores enum SysCacheIdentifier
Andreas Karlsson <andreas@proxel.se>
From: Andreas Karlsson <andreas@proxel.se>
To: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@lists.postgresql.org
Date: 2026-02-13T05:46:55Z
Lists: pgsql-hackers
Attachments
- v1-0001-Use-SysCacheIdentifier-enum-instead-of-int.patch (text/x-patch) patch v1-0001
On 2/12/26 5:17 PM, Tom Lane wrote: > 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). 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. > > Thoughts? Attached a patch which changes that in HEAD and I think for HEAD the best solution is the just fix all cases where we use ints like this to actually use the enum. As for back branches I agree with Michael, just add a comment explaining why this dummy function is necessary. Andreas
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Reduce presence of syscache.h in src/include/
- e0fa5bd14656 19 (unreleased) landed
-
Switch SysCacheIdentifier to a typedef enum
- ee642cccc43c 19 (unreleased) landed
-
Add concept of invalid value to SysCacheIdentifier
- c06b5b99bbb0 19 (unreleased) landed