You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maka.apache.org by "Astro-Han (via GitHub)" <gi...@apache.org> on 2026/09/01 15:11:40 UTC
[PR] ci: pin the dependency audit runner to measure the queue [maka]
Astro-Han opened a new pull request, #4483:
URL: https://github.com/apache/maka/pull/4483
One label change on one cheap lane, to settle a causal question the run history cannot.
### What was measured
Over a complete ~19h snapshot (1756 jobs, 2026-08-31T19:37Z → 2026-09-01T14:32Z), **`ubuntu-latest` is the only runner label in this repository that queues.** Median queue by UTC hour, first-layer jobs only (no `needs:`):
| UTC hour | `ubuntu-latest` | `ubuntu-24.04*` | `windows-*` | `macos-*` |
|---|---|---|---|---|
| 00–06 | 0.0–0.1 | 0.0–0.1 | 0.0–0.1 | 0.1 |
| 08 | **18.6** | 0.8 | 0.2 | 0.6 |
| 09 | **19.7** | 0.3 | 0.1 | 0.1 |
| 12 | **22.0** | 1.5 | 0.1 | 0.8 |
| 13 | **22.6** | 0.2 | 0.1 | 0.2 |
Restricted to 07:00–14:00 UTC, `run.created_at → first job started`: `dependency-audit` **15.8 min**, CI **33.4 min**, `cli-package-validation` (pinned labels) **0.3 min**, `release-windows-check` 0.3, `windows-recovery` 0.1.
Confounders ruled out:
- **Not the `-latest` alias.** `gitoxide-helper-admission` fans one run out to `ubuntu-latest` / `macos-latest` / `windows-latest`, so all three jobs share a `created_at`. Median over 8 runs: **15.0 / 0.1 / 0.1 min**; `ubuntu-latest` slower than *both* siblings by >5 min in 4 of 8.
- **Not our own `concurrency` groups.** Median `run.run_started_at - run.created_at` is 0.0 for every workflow measured.
- **Not a self-hosted split.** `runner_group_name` reads `GitHub Actions` for both classes.
- **Not the time of day.** The table above is the control for that; every label is idle 00–06 and only one of them stops being idle at 07.
- **Cross-workflow paired check.** 426 pairings within ±15 min: median 11.4 vs 0.2 min, `ubuntu-latest` slower by >1 min in 285, faster in 22.
### What is not known
Whether pinning **lands** a job in the idle pool, or whether that pool is idle only because almost nobody asks for it. That is a causal claim and no amount of observational history settles it. Hence this PR.
### Why this lane
- One job, no matrix, no `needs:`.
- p50 42s, p99 54s. Runs `npm ci --ignore-scripts` and three Node scripts; nothing reads the OS version.
- Selects on 22% of PR branches, so a week produces plenty of samples.
- A nightly cron at 03:17 UTC has been green 24 of 25 runs, in the window where nothing queues — so the lane's actual job is unaffected either way.
**`gitoxide-helper-admission` deliberately keeps its `ubuntu-latest` matrix leg**, which leaves a same-instant three-OS control running for the whole observation period.
### How to read the result
After a week, compare `dependency-audit`'s `job.started_at - job.created_at` against `gitoxide-helper-admission`'s `ubuntu-latest` leg over the same hours:
```bash
gh api "repos/apache/maka/actions/workflows/dependency-audit.yml/runs?per_page=100" --paginate \
--jq '.workflow_runs[].id' | xargs -P8 -I{} gh api "repos/apache/maka/actions/runs/{}/jobs" \
--jq '.jobs[] | select(.conclusion=="success") | [(.labels|join(",")), .created_at, .started_at] | @tsv'
```
If the median stays at 15 minutes during 07–14 UTC, the pool theory is wrong, revert this and stop spending time on runner labels. If it drops to under a minute, the same one-line change is worth making everywhere `ubuntu-latest` appears — CI most of all, since it is one job now and would gain roughly 15 minutes of wall clock per PR push during working hours.
### What is given up
Automatic OS image upgrades on this one lane; `ubuntu-24.04` has to be bumped by hand when GitHub moves `latest`. `cli-package-validation` already pins every one of its runners, so both conventions exist in the repository today.
Refs #4480
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org
Re: [PR] ci: name the Ubuntu image instead of asking for the queue [maka]
Posted by "Astro-Han (via GitHub)" <gi...@apache.org>.
Astro-Han commented on PR #4483:
URL: https://github.com/apache/maka/pull/4483#issuecomment-5496375993
This PR's own checks turned into the controlled experiment the description said the run history could not provide. Same push, same `created_at` to the second, label the only variable.
**Its first push (15:11:42Z), when only `dependency-audit` was pinned:**
| queue | label | job |
|---|---|---|
| **9.2 min** | `ubuntu-latest` | CI / test |
| **8.8 min** | `ubuntu-latest` | PR effort label / label |
| **3 s** | `ubuntu-24.04` | Dependency audit / audit |
**#4482's push at 15:10:33Z, eight jobs created in the same second:**
| queue | label | job |
|---|---|---|
| **7.7 min** | `ubuntu-latest` | Gitoxide helper admission / ubuntu-latest |
| **7.7 min** | `ubuntu-latest` | PR effort label / label |
| 24 s | `windows-latest` | Gitoxide helper admission / windows-latest |
| 23 s | `macos-latest` | Gitoxide helper admission / macos-latest |
| 6 s | `ubuntu-24.04-arm` | CLI package validation / linux-arm64 |
| 4 s | `macos-15` | CLI package validation / darwin-arm64 |
| 3 s | `windows-2025` | CLI package validation / win32-x64 |
| **3 s** | `ubuntu-24.04` | CLI package validation / linux-x64 |
That is the same-instant `ubuntu-latest` vs `ubuntu-24.04` comparison the description listed as missing: **7.7 minutes against 3 seconds, from one push.**
**After the full pin (15:26:15Z):** CI / test on `ubuntu-24.04` waited 3.3 min. So did `windows-latest` (3.2), `macos-15` (1.8) and the other pinned Linux jobs — a brief global wobble in that window, not something specific to a label. `windows-2025` and `ubuntu-24.04-arm` in the same batch took 20 and 19 seconds.
**And the direct comparison:** #4482's CI / test, created 15:21:39Z on `ubuntu-latest`, was still queued nine minutes later. This PR's CI / test, created 15:26:15Z on `ubuntu-24.04` — **four and a half minutes later** — started at 15:29:35Z and was already running by then.
This does not explain the mechanism. The likeliest reading is still that ASF-wide demand saturates whatever capacity is behind the `ubuntu-latest` name during working hours while the pinned name is not contended, and nothing here proves that. What it does settle is the part the description flagged as unproven: asking for `ubuntu-24.04` instead of `ubuntu-latest`, from the same push at the same second, gets a runner in seconds instead of minutes.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org
Re: [PR] ci: name the Ubuntu image instead of asking for the queue [maka]
Posted by "Astro-Han (via GitHub)" <gi...@apache.org>.
Astro-Han merged PR #4483:
URL: https://github.com/apache/maka/pull/4483
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org