Re: Keeping track of buildfarm animals' personality

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Keeping track of buildfarm animals' personality
Date: 2024-06-11 20:29:29
Message-ID: CA+hUKG+PkpjH11+vA-nAc-aD3--xCArTZdwhMC7p75Bu_H5z+g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jun 12, 2024 at 4:13 AM Andrew Dunstan <andrew(at)dunslane(dot)net> wrote:
> Way back in 2004 there was discussion of how we wanted to differentiate
> buildfarm animals. We were flying blind to a large extent, as we didn't
> have many similar things to compare to. We settled on {OS-name,
> OS-version, Compiler-name, Compiler-version}. The idea was that the
> names would be invariant but we would allow for OS and compiler upgrades.
>
> There are two problems with this system, and have been since the get-go.
> First, owners forget to run the upgrade-personalty.pl script when the
> upgrade the OS and./or compiler. Second, there is no standardization of
> the names. Complaints about these surfaced (again) at the Vancouver
> unconference session about the buildfarm's future.

I was sorry to miss that one! Basically every unconference was
unmissable, but you had to miss 3/4 of them due to physics...

> I don't have information about other OSs or compilers.

I wonder if most non-Linux, Unixoid systems would give a useful enough
answer with something like "uname -rs". It's a standard[1] after all.
The reason it's a bit useless on Linux is that Linux is [clears
throat, channels Richard Stallman] only a kernel. The interesting
information for Linux is the distro, but that doesn't apply for stuff
like FreeBSD, AIX, yada yada. Some results from systems near me right
now:

Darwin 23.5.0
FreeBSD 14.1-RELEASE

The Mac is a bit annoying because that's a kernel or Darwin version
(?), so you'd have to do some work to map it back to a macOS version
like 14.5... For eg FreeBSD you can also have the kernel out of sync
with the user space but normally you wouldn't so I think that's good
enough. Macs do have a way to get the OS version people are more
familiar with:

% sw_vers
ProductName: macOS
ProductVersion: 14.5
BuildVersion: 23F79

Maybe a uname-based default would be good enough for *BSD, Solaris
etc, and then we just have a small list of specialisations where we
know how to do better?

[1] https://pubs.opengroup.org/onlinepubs/009695299/utilities/uname.html

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nathan Bossart 2024-06-11 20:30:14 Re: small pg_dump code cleanup
Previous Message Tom Lane 2024-06-11 19:14:49 Re: confirmed flush lsn seems to be move backward in certain error cases