diff --git a/swarm_dial.go b/swarm_dial.go index ae4c87f1ad215e5f68158281e51a648a7bb7c3a6..9b10db165bb49ccd10aaf3c7fa5f59de52f8aed4 100644 --- a/swarm_dial.go +++ b/swarm_dial.go @@ -517,6 +517,11 @@ loop: delete(requests, reqno) } } + + // if it was a backoff, clear the address dial so that it doesn't inhibit new dial requests + if res.err == ErrDialBackoff { + delete(pending, res.addr) + } } } }