Re: abi-compliance-check failure due to recent changes to pg_{clear,restore}_{attribute,relation}_stats()

David E. Wheeler <david@justatheory.com>

From: "David E. Wheeler" <david@justatheory.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Robert Haas <robertmhaas@gmail.com>, Nathan Bossart <nathandbossart@gmail.com>, Mankirat Singh <mankiratsingh1315@gmail.com>, pg@bowt.ie, andrew@dunslane.net, pgsql-hackers@lists.postgresql.org
Date: 2025-10-20T21:39:10Z
Lists: pgsql-hackers
On Oct 20, 2025, at 22:14, Tom Lane <tgl@sss.pgh.pa.us> wrote:

> I do take your point that being able to find things before commit
> is helpful.  But I think the answer to that is to get this
> general-purpose ABI check mechanism sufficiently well product-ized
> that committers can run it locally if they choose.  Ideally we'd
> have multiple BF animals running it, so there's definitely motivation
> to get it at least to the point where it doesn't require hand-feeding
> by BF owners.  (If memory serves, we've had ABI breaks that affected
> only 32 bit or only 64 bit machines, and of course there's the
> possibility of ones that only manifest with particular feature
> selections.  So I'm not content with just one animal running it.)

FWIW, running it on a Linux animal currently requires just a couple steps

1. Download the module:

```sh
curl -LO https://raw.githubusercontent.com/MankiratSingh1315/pg-bf-client-code/refs/heads/abi-comp-check/PGBuild/Modules/ABICompCheck.pm
mv ABICompCheck.pm build-farm-path/PGBuild/Modules/
```

2. Add it to `modules` in `build-farm.conf`, e.g.,

    modules => [qw(TestUpgrade ABICompCheck)],

3. Install the abigail suite; I believe the Debian packages are `abigail-tools` and `libabigail0`

I think that’s it. I use `run_branches.pl --run-all` to test all the current maintenance branches. It does not run against master.

Best,

David