Skip to content

CI: GNU test tests/id/setgid fails intermittently on unrelated PRs #14998

Closed

Description

@abendrothj

The GNU comparison bot reports tests/id/setgid as a new failure ("is passing on 'main'. Maybe you have to rebase?") on PRs that do not touch id or anything it uses, for example #14524 (tr), #14594 (GnuTests.yml), #14772 (install), #14937 (nice on Windows), #14964 (wasi ignore macro), #14969 (action version bump) and #14980 (refactor).

It looks intermittent rather than a regression from any of them. If so, it could go in .github/workflows/ignore-intermittent.txt until the cause is found.

Activity

  1. xtqqczze commented on Oct 1, 2026

    @xtqqczze
    Collaborator

    If you cannot find a cause, you can add it to .github/workflows/ignore-intermittent.txt.

  2. xtqqczze commented on Oct 1, 2026

    @xtqqczze
    Collaborator

    Since the failure is intermittent, the bot also spams unrelated PRs with messages like Congrats! The gnu test tests/id/setgid is no longer failing!, e.g. on #14944.

  3. abendrothj commented on Oct 1, 2026

    @abendrothj
    ContributorAuthor

    Found the cause, so no ignore entry needed: the root tests drop to nobody, which can't reach our build under /home/runner (0750), so id resolves to the runner's own rust-coreutils. Runner images still shipping 0.8.0 exit 1 there and newer ones ship 0.10.0, which is why it flips between runs (and why the bot posts the congrats messages). #15005 lets nobody reach the build dir; on an old image id/setgid passes with it.

  4. xtqqczze commented on Oct 1, 2026

    @xtqqczze
  5. abendrothj commented on Oct 1, 2026

    @abendrothj
    ContributorAuthor

    26.04 does ship it by default. In resolute, the essential coreutils package has Pre-Depends: coreutils-from-uutils | coreutils-from-gnu, and coreutils-from-uutils pre-depends on rust-coreutils. See https://launchpad.net/ubuntu/resolute/amd64/coreutils and https://launchpad.net/ubuntu/+source/rust-coreutils. The release had 0.8.0-0ubuntu3, and 0.10.0-1ubuntu2~26.04.1 reached -updates on 2026-09-21.

    GitHub rolls new images out gradually, so ubuntu-26.04 is landing on two images right now. I compared the image version printed in the native job log with id/setgid in gnu-root-full-result for the last 15 runs:

    image id/setgid
    20260920.143.1 FAIL in 10/10 (1, 2, 3, ...)
    20260927.149.1 PASS in 5/5 (1, 2, 3, ...)

    The 0920 image was built before 0.10.0 reached -updates and the 0927 image after it. I haven't read the package version off each image directly yet, so that link is inferred from the dates. To confirm it, I pushed a temporary step to #15005 (1fd81e1) that prints dpkg -l rust-coreutils and /usr/bin/id --version on the runner. I'll post what each image reports and drop the commit before merge. Either way, the result follows the image, not the PR.

    The root of it is that the root tests run as nobody, which can't traverse /home/runner (0750). That means id resolves to whatever /usr/bin/id the image has, not our build. #15005 fixes that, so the image version stops mattering.

  6. xtqqczze commented on Oct 1, 2026

    @xtqqczze
    Collaborator

    Not sure this is correct. Ubuntu 26.04 LTS doesn't ship with Rust coreutils, and we shouldn't be flipping between runner images anyway, so I don't think this explains the intermittent result.

    Sorry I meant Ubuntu 24.04 LTS, which we should be using with ubuntu-latest.

    "The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see actions/runner-images#14748"

  7. xtqqczze commented on Oct 1, 2026

    @xtqqczze
    Collaborator

    @oech3 Actually, since #14594 we use ubuntu-26.04 for GNU tests. I guess we should have marked tests/id/setgid is failing in that PR.

  8. xtqqczze commented on Oct 1, 2026

    @xtqqczze
    Collaborator

    GitHub rolls new images out gradually, so ubuntu-26.04 is landing on two images right now.

    This is correct. The 20260927.149 runner image is based on the newly released Ubuntu 26.04.1 LTS, which includes rust-coreutils 0.10.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions