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
Guard executor background goroutine channel writes with executorDone
Retry timer goroutines and task goroutines wrote to internalRetryCh and
completionCh unconditionally. If Execute exits while these goroutines are
still active, writes to abandoned channels relied on buffer sizing as an
implicit safety net rather than explicit shutdown signalling.
Add an executorDone channel closed via defer when Execute returns. Both
the retry timer goroutine (internalRetryCh write) and task goroutines
(completionCh write) now select on executorDone so they exit cleanly
without writing to a channel no longer being drained.
0 commit comments