Skip to content

Investigate intermittent cancellation regression failure in parallel CI #1385

Description

@Chemaclass

The Ubuntu parallel extended job failed in test_cancellation_before_timeout_does_not_leave_cleanup_running while validating #1382. The same PR passed Ubuntu strict, and this regression is unchanged from main at 69f44295; it was added in #1381 for #1376.

Failing job: https://github.com/TypedDevs/bashunit/actions/runs/37050526117/job/110982506878

The assertion at tests/acceptance/bashunit_timeout_test.sh:321 found marker.forced. The helper creates this marker when kill -0 still succeeds for the recorded body PID after sixty 0.05-second polls, then sends group KILL. The CI log does not distinguish a live cleanup process from an exited process that has not been reaped.

Twenty focused repetitions in GNU Bash 5.3.9 passed on both the #1382 branch and the unchanged main baseline. The failure has not reproduced locally, so the root cause is still unproven. Do not increase the poll budget or skip the regression without evidence.

Acceptance criteria:

  • Capture enough process-state evidence to identify why the cancellation regression reaches its forced cleanup in CI.
  • Fix the regression or runtime behavior according to that evidence, preserving cancellation before timeout and the bounded grace after timeout.
  • Verify the focused cancellation regressions repeatedly and the full parallel suite on Linux and macOS Bash 3.2, with Bash 3.0 compatibility retained.

This failure blocks merging #1382 and completing the remaining issue queue.

Activity

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

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

  • Status
    Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions