From fad8c7cf61b7c4fd36c57d50d89d0e01ba601acd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pawe=C5=82=20Polewicz?=
Date: Sun, 12 Jan 2025 20:29:57 +0200
Subject: [PATCH 1/2] Handle TransportConnectionError when receiving
---
.../compute_horde/miner_client/base.py | 34 +++++++++++--------
1 file changed, 19 insertions(+), 15 deletions(-)
diff --git a/compute_horde/compute_horde/miner_client/base.py b/compute_horde/compute_horde/miner_client/base.py
index 16856b3a5..4795cb85a 100644
--- a/compute_horde/compute_horde/miner_client/base.py
+++ b/compute_horde/compute_horde/miner_client/base.py
@@ -107,21 +107,25 @@ def deferred_send_model(self, model: BaseRequest):
self.deferred_send_tasks.append(task)
async def read_messages(self):
- async for msg in self.transport:
- try:
- msg = self.accepted_request_type().parse(msg)
- except ValidationError as ex:
- error_msg = f"Malformed message from miner {self.miner_name}: {str(ex)}"
- logger.info(error_msg)
- self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
- continue
-
- try:
- await self.handle_message(msg)
- except UnsupportedMessageReceived:
- error_msg = f"Unsupported message from miner {self.miner_name}"
- logger.exception(error_msg)
- self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
+ try:
+ async for msg in self.transport:
+ try:
+ msg = self.accepted_request_type().parse(msg)
+ except ValidationError as ex:
+ error_msg = f"Malformed message from miner {self.miner_name}: {str(ex)}"
+ logger.info(error_msg)
+ self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
+ continue
+
+ try:
+ await self.handle_message(msg)
+ except UnsupportedMessageReceived:
+ error_msg = f"Unsupported message from miner {self.miner_name}"
+ logger.exception(error_msg)
+ self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
+ except TransportConnectionError as exc:
+ logger.warning("%s connection error when trying to receive: %r", self.miner_name, exc)
+ self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
class UnsupportedMessageReceived(Exception):
From b5c833f162433cff5684e4571d7e595f7cc29bfa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pawe=C5=82=20Polewicz?=
Date: Sun, 12 Jan 2025 20:33:28 +0200
Subject: [PATCH 2/2] fix whitespace
i blame github IDE
---
compute_horde/compute_horde/miner_client/base.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/compute_horde/compute_horde/miner_client/base.py b/compute_horde/compute_horde/miner_client/base.py
index 4795cb85a..81f1f3b20 100644
--- a/compute_horde/compute_horde/miner_client/base.py
+++ b/compute_horde/compute_horde/miner_client/base.py
@@ -116,7 +116,6 @@ async def read_messages(self):
logger.info(error_msg)
self.deferred_send_model(self.build_outgoing_generic_error(error_msg))
continue
-
try:
await self.handle_message(msg)
except UnsupportedMessageReceived: