diff options
| author | Bryan C. Mills <bcmills@google.com> | 2022-09-29 08:40:37 -0400 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2022-10-04 23:19:13 +0000 |
| commit | 0fec65d281af8932ce8da946faa55884f2427cfc (patch) | |
| tree | de48e699b6cb34c479cd9ff510dd6c6946aea726 /src/os/exec/exec_test.go | |
| parent | e7d203f494281a229a7d4ef769f14975e9b12e4e (diff) | |
| download | go-0fec65d281af8932ce8da946faa55884f2427cfc.tar.xz | |
os/exec: add a GODEBUG setting to diagnose leaked processes
Updates #52580.
For #50436.
Change-Id: I669f13863f1f85d576c3c94500b118e6989000eb
Reviewed-on: https://go-review.googlesource.com/c/go/+/436655
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Run-TryBot: Bryan Mills <bcmills@google.com>
Diffstat (limited to 'src/os/exec/exec_test.go')
| -rw-r--r-- | src/os/exec/exec_test.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/os/exec/exec_test.go b/src/os/exec/exec_test.go index 822f606d66..13715fecac 100644 --- a/src/os/exec/exec_test.go +++ b/src/os/exec/exec_test.go @@ -38,6 +38,13 @@ import ( var haveUnexpectedFDs bool func init() { + godebug := os.Getenv("GODEBUG") + if godebug != "" { + godebug += "," + } + godebug += "execwait=2" + os.Setenv("GODEBUG", godebug) + if os.Getenv("GO_EXEC_TEST_PID") != "" { return } @@ -76,6 +83,14 @@ func TestMain(m *testing.M) { } } } + + if !testing.Short() { + // Run a couple of GC cycles to increase the odds of detecting + // process leaks using the finalizers installed by GODEBUG=execwait=2. + runtime.GC() + runtime.GC() + } + os.Exit(code) } |
