go: x/tools/go/internal/gcimporter: frequent failures without useful output
linux-ppc64le-power9osu …
…
haserrors/haserrors.go:2:22: cannot convert "" (untyped string constant) to untyped int
haserrors/haserrors.go:3:18: undeclared name: undefined
FAIL golang.org/x/tools/go/internal/gcimporter 31.391s
https://build.golang.org/log/50ebd814481ff8a3c0976a9ec32602bdca86e185 https://build.golang.org/log/4f4af454dd05bbeccf2dd92c3d045a5d463f6889 https://build.golang.org/log/aeb6a5acd91e7cea78a93621877395caea90f785 https://build.golang.org/log/f4f7db7b08ee567d0086336920d3faf69363b080
(CC @griesemer, @stamblerre for gcimporter.)
These sorts of patterns would be a lot easier to spot if fetchlogs worked on the x repos (#35515; CC @andybons for prioritization).
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 29 (27 by maintainers)
Commits related to this issue
- go/internal/gcimporter: avoid printing to stderr in passing tests x/tools/go/loader by default prints errors to stderr. TestBExportData_stdlib and TestIExportData_stdlib intentionally load packages w... — committed to golang/tools by bcmills 3 years ago
- go/internal/gcimporter: remove skipSpecialPlatforms It does not appear to be needed any more. For golang/go#38415 Change-Id: I5c9525a96606df93c58cc15a4cb4281f95b93902 Reviewed-on: https://go-review... — committed to golang/tools by bcmills 3 years ago
@findleyr You are correct. I didn’t have the latest. Now if I try on various systems I have access to, I am not able to reproduce a failure with this test, even when using the same configuration as the build machines.
I agree with that assessment. I think 7 failures per month is still too high long-term, but it’s far lower than the failure rate in May. I think it’s good enough not to be a release-blocker at this point.
Note that the openbsd failures are actually tracked separately by #36563, and the scaleway failures went away when the scaleway machines were removed in #45066.
So, filtering those out as well yields the following recent failures:
2021-06-25T19:21:47-00129ff/linux-arm64-packet 2021-06-25T19:21:17-fe2294a/linux-arm64-packet 2021-06-24T04:20:31-da404b5/linux-arm64-packet 2021-06-16T01:55:16-463a76b/linux-ppc64le-power9osu 2021-06-09T15:58:24-16e5f55/linux-arm64-packet 2021-06-09T14:15:26-9f230b5/linux-arm64-packet 2021-06-02T19:23:16-7922491/linux-arm64-packet 2021-05-24T16:41:39-e64a37c/linux-ppc64le-power9osu 2021-05-23T03:57:00-4061312/linux-ppc64le-power9osu 2021-05-21T23:19:31-1e0c960/linux-ppc64le-power9osu 2021-05-20T18:25:17-2275bb5/linux-ppc64le-buildlet 2021-05-20T18:25:17-2275bb5/linux-ppc64le-power9osu 2021-05-20T18:25:17-2275bb5/windows-386-2008 2021-05-20T15:46:45-3063790/linux-ppc64le-power9osu 2021-05-20T14:08:36-0886cdd/linux-ppc64le-power9osu 2021-05-19T23:21:03-46e69bf/linux-arm64-packet 2021-05-19T23:21:03-46e69bf/linux-ppc64le-power9osu 2021-05-19T23:19:09-f803486/linux-ppc64le-power9osu 2021-05-19T16:08:23-49064d2/linux-ppc64le-power9osu 2021-05-19T14:12:35-a0f4b7b/linux-arm64-packet 2021-05-19T14:12:35-a0f4b7b/linux-ppc64le-buildlet 2021-05-19T14:12:35-a0f4b7b/linux-ppc64le-power9osu 2021-05-19T14:12:23-f451690/linux-arm64-packet 2021-05-19T14:12:23-f451690/linux-ppc64le-power9osu 2021-05-18T18:21:53-17b3466/linux-ppc64le-buildlet 2021-05-18T18:21:53-17b3466/linux-ppc64le-power9osu 2021-05-18T02:12:20-6da3d7a/linux-ppc64le-buildlet 2021-05-18T02:12:20-6da3d7a/linux-ppc64le-power9osu 2021-05-17T17:18:20-8f301ca/linux-ppc64le-buildlet 2021-05-17T17:18:20-8f301ca/linux-ppc64le-power9osu 2021-05-13T17:35:42-09ab05b/linux-ppc64le-buildlet 2021-05-13T17:35:42-09ab05b/linux-ppc64le-power9osu 2021-05-13T13:20:04-cd1be5d/linux-ppc64le-buildlet 2021-05-13T13:20:04-cd1be5d/linux-ppc64le-power9osu 2021-05-12T22:01:29-57c3a74/linux-ppc64le-power9osu 2021-05-12T16:42:30-9dfac01/linux-ppc64le-power9osu 2021-05-11T20:42:14-be4aaae/linux-ppc64le-power9osu 2021-05-11T14:51:35-2db0265/linux-arm64-packet 2021-05-11T14:51:35-2db0265/linux-ppc64le-power9osu 2021-05-11T14:29:16-9cddb0e/linux-ppc64le-power9osu 2021-05-11T03:28:22-18795da/linux-ppc64le-power9osu 2021-05-10T23:22:37-79d39ff/linux-arm64-packet 2021-05-10T23:22:37-79d39ff/linux-ppc64le-power9osu 2021-05-10T23:21:19-fa05545/linux-arm64-packet 2021-05-10T23:21:19-fa05545/linux-ppc64le-power9osu 2021-05-10T21:57:30-5a66778/linux-arm64-packet 2021-05-10T21:57:30-5a66778/linux-ppc64le-power9osu
I.e. 7 in the last month. In our recent attempts to debug this, we’ve been unsuccessful at reproducing it with either slowbots or gomote. We can keep trying, but IMO this should not be a release blocker: the overlap between “too infrequent to debug” and “frequent enough to be a release blocker” should be empty. I think if we want to achieve a lower level of flakiness on the builders, we need to first make it easier to identify and diagnose flakes.
@bcmills, @stamblerre, @golang/release please let me know if you feel differently. I’d like to wait for consensus before removing the release-blocker label.
It may also be worthwhile to brainstorm about what tooling could make this easier. I have some ideas, but don’t want to distract the conversation from deciding whether this should be a release blocker.
I’m not sure if this is OOM-related. In local testing, I always get non-empty output for that, even when the process is terminated by the kernel instead of the runtime:
Is it possible that the test is somehow invoking
os.Exititself with a nonzero exit code?