]> Cypherpunks repositories - gostls13.git/commitdiff
runtime/pprof: test for Darwin flake in TestVMInfo
authorDavid Chase <drchase@google.com>
Mon, 15 Apr 2024 21:53:14 +0000 (17:53 -0400)
committerDavid Chase <drchase@google.com>
Tue, 16 Apr 2024 19:59:50 +0000 (19:59 +0000)
If it contains
"No process corpse slots currently available, waiting to get one"
skip the test in short mode, so that run.bash works reliably
on developer laptops, but the flake is still recorded on builders.

The problem also seems to get better after a laptop reboot?

Updates #62352.

Change-Id: I12e8f594f0b830bacda5d8bfa594782345764c4a
Reviewed-on: https://go-review.googlesource.com/c/go/+/579295
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
src/runtime/pprof/vminfo_darwin_test.go

index ac180826b149836f73a8d8ec4113c1a4a9991530..641587200c297f55c78175cff312c77b95624935 100644 (file)
@@ -79,6 +79,9 @@ func useVMMap(t *testing.T) (hi, lo uint64, retryable bool, err error) {
                t.Logf("vmmap output: %s", out)
                if ee, ok := cmdErr.(*exec.ExitError); ok && len(ee.Stderr) > 0 {
                        t.Logf("%v: %v\n%s", cmd, cmdErr, ee.Stderr)
+                       if testing.Short() && strings.Contains(string(ee.Stderr), "No process corpse slots currently available, waiting to get one") {
+                               t.Skipf("Skipping knwn flake in short test mode")
+                       }
                        retryable = bytes.Contains(ee.Stderr, []byte("resource shortage"))
                }
                t.Logf("%v: %v\n", cmd, cmdErr)