From 216794939d7819d71f49663c554b76ba0908d36d Mon Sep 17 00:00:00 2001 From: draoi Date: Thu, 11 Jul 2024 23:14:21 +0200 Subject: [PATCH] manual_session: sleep when try_register() call fails, then try again Fixes a bug that would cause a death loop when the call to try_register() fails. Also removes a duplicate WARN print. --- src/net/session/manual_session.rs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/net/session/manual_session.rs b/src/net/session/manual_session.rs index 51340b125..b19339a31 100644 --- a/src/net/session/manual_session.rs +++ b/src/net/session/manual_session.rs @@ -179,6 +179,8 @@ impl Slot { debug!(target: "net::manual_session", "Cannot connect to manual={}, err={}", &self.addr, e); + sleep(outbound_connect_timeout).await; + continue } @@ -210,12 +212,6 @@ impl Slot { } } Err(e) => { - warn!( - target: "net::manual_session", - "[P2P] Unable to connect to manual outbound [{}]: {}", - self.addr, e, - ); - self.handle_failure(e, &self.addr); } } @@ -225,6 +221,7 @@ impl Slot { "[P2P] Waiting {} seconds until next manual outbound connection attempt [{}]", outbound_connect_timeout, self.addr, ); + sleep(outbound_connect_timeout).await; } }