Skip to content

CI: uutils timeout on Ubuntu 26.04 runners breaks --kill-after grace (main red) #2020

Closed

Description

@JarryShaw

Describe the bug
On ubuntu-latest runners that now get Ubuntu 26.04, timeout is the uutils Rust rewrite (0.10.0) rather than GNU coreutils. Its --kill-after sends KILL right after the first signal, with no grace period, and sends it only to the direct child, not to the process group. As a result:

  • main d419d8c39 is red on "Plain unittest ordering (project)", and ci: run the curated ALL tier on PyPy, split into separate pytest runs (#1958, #2005) #2006's Project tests fail the same 3 tests: test_resource_monitor_1740::test_a_timeout_exits_124, ::test_a_tests_step_killed_after_the_timeout_records_137_and_its_time, and test_graalpy_shards_1963::test_the_timeout_ends_the_run_in_progress_and_starts_no_other. They see 137 where 124 is expected.
  • The real tests step (timeout --signal=INT --kill-after=3m 110m in experimental.yml) loses pytest's teardown grace on 26.04, and its xdist workers are left orphaned.

Reproduction

  • Failing jobs ran on ubuntu-26.04 (image 20261018.168.1): 119423889806 on main and 119422726301 on ci: run the curated ALL tier on PyPy, split into separate pytest runs (#1958, #2005) #2006.
  • Passing jobs ran on ubuntu-24.04, including job 119413449722 on the same sha d419d8c39.
  • In docker run ubuntu:26.04, timeout --version reports uutils coreutils 0.10.0. Running timeout -v --signal=INT --kill-after=3s 1 sleep 30 gives exit 137 after about 1 s. gnutimeout, which is GNU 9.7 on the same image, gives 124.

Expected behavior
The timeout wrappers behave as they do with GNU timeout on either image.

System information

  • OS Version: Ubuntu 26.04 (GitHub Actions ubuntu-latest)
  • commit: d419d8c39

Additional context

Activity

  1. added
    bugIssues reporting a defect (set by the bug report template; a default, not an assessment)
    ciPull requests that change CI or workflow configuration (ci: subject prefix)
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 21, 2026
  2. removed
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 21, 2026
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

    bugIssues reporting a defect (set by the bug report template; a default, not an assessment)ciPull requests that change CI or workflow configuration (ci: subject prefix)

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions