Repository navigation
Conversation
Co-authored-by: Isaac <no-reply@databricks.com>
Contributor
Author
|
go/cli/dashboard/error/3304, go/cli/dashboard/test/acceptance.TestAccept/inittime: short links are broken, should not link to github.com |
Collaborator
✅ Integration test reportCommit: ea253b3
Top 11 slowest tests (at least 2 minutes):
|
denik
marked this pull request as ready for review
November 11, 2026 17:43
denik
enabled auto-merge
November 11, 2026 17:43
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
check_init_time.pynow judges the sum of each package's minimum init() time across runs, instead of the minimum of the per-run totals. The 10 ms threshold stays the same, and so do the run counts and output format. The printedtotalis now the sum of the per-package lines listed below it.Why
TestAccept/inittimehas been flaky on Linux CI since it was added in #7406: it failed 129 times in its first ~30 hours, on main and in PRs, in bothdirectanddirectdms. This is not a CLI regression. The totals were the same in the first failing run on main (12.04 ms) and the latest one (11.95 ms), and the per-package breakdown didn't change either: the top packages are stillcmd/air/encoding/gob/bundle/configat <1 ms each.The problem is the estimator. On GitHub runners under load from parallel tests, almost every run has some package hit by noise. So even the fastest of 20 runs stays inflated, while each package's own minimum stays close to its real cost. Here are both metrics, computed from the per-package logs of all 129 failures:
Locally (linux/amd64, 8 cores), the two metrics are ~3 ms and ~3.5–4 ms with or without 8–16 busy-loop processes running.
A slow init() is slow on every run, so its own minimum is high and the new metric still catches it: the +20 ms go-runewidth case that motivated #7406 would still fail. I kept 10 ms rather than raising it. The new metric leaves ~1.2 ms of headroom over the worst CI value seen, and when the total is over the threshold the script keeps adding runs (up to 20), which lowers per-package minimums further.
Tests
go test ./acceptance -run 'TestAccept/inittime$'passes locally.check_init_time.py --max-ms 2 -- databricks --versionstill fails withFAIL: package init() takes 3.96 ms in total, over 2 ms.Dashboard
This pull request and its description were written by Isaac.