Fix: deadlock on dns shutdown when starting up
This commit is contained in:
@@ -96,7 +96,10 @@ func (l *looper) logAndWait(ctx context.Context, err error) {
|
|||||||
func (l *looper) signalOrSetStatus(userTriggered *bool, status models.LoopStatus) {
|
func (l *looper) signalOrSetStatus(userTriggered *bool, status models.LoopStatus) {
|
||||||
if *userTriggered {
|
if *userTriggered {
|
||||||
*userTriggered = false
|
*userTriggered = false
|
||||||
l.running <- status
|
select {
|
||||||
|
case l.running <- status:
|
||||||
|
default: // receiver droppped out - avoid deadlock on events routing when shutting down
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
l.state.SetStatus(status)
|
l.state.SetStatus(status)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user