You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
v23/context: fix goroutine leak in WithRootCancel (#214)
Whenever a child context is created via `WithRootCancel`, a goroutine
spawns to gracefully handle closing the child context whenever the root
context gets canceled.
However, the current implementation leaks goroutines whenever the child
context exits before the root context exits. This pull request looks to
fix the problem by exiting the goroutine whenever the child context is
done.
See `TestRootCancelGoroutineLeak` for the reproduction use case and test
that demonstrates the leak. This is also easily visible via `pprof`
using the `goroutine` module.
Co-authored-by: Richard Huang <rhuang@grailbio.com>
0 commit comments