From ab46f567534b65748b2e54921bf26de1a542aa3a Mon Sep 17 00:00:00 2001 From: Joakim Hulthe Date: Tue, 5 Dec 2023 14:16:30 +0100 Subject: [PATCH] Reset socket on error --- manager/src/provider/mqtt.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/manager/src/provider/mqtt.rs b/manager/src/provider/mqtt.rs index a77367d..52133fd 100644 --- a/manager/src/provider/mqtt.rs +++ b/manager/src/provider/mqtt.rs @@ -124,8 +124,11 @@ impl BulbProvider for BulbsMqtt { loop { match inner(self, &command).await { Ok(t) => break Ok(t), - Err(FailMode::Retry(e)) => info!("Retrying on error: {e:?}"), Err(FailMode::Fatal(e)) => break Err(e), + Err(FailMode::Retry(e)) => { + info!("Retrying on error: {e:?}"); + self.socket.socket = None; + } } } } @@ -204,8 +207,11 @@ impl BulbProvider for BulbsMqtt { loop { match inner(self).await { Ok(t) => break Ok(t), - Err(FailMode::Retry(e)) => info!("Retrying on error: {e:?}"), Err(FailMode::Fatal(e)) => break Err(e), + Err(FailMode::Retry(e)) => { + info!("Retrying on error: {e:?}"); + self.socket.socket = None; + } } } }