From 7952fc83248f286447e576bddf6f4e3be455d00e Mon Sep 17 00:00:00 2001 From: Jack Robison Date: Fri, 8 Jan 2021 09:53:12 -0500 Subject: [PATCH] fix reflector loop propagating cancelled error --- lbry/stream/managed_stream.py | 7 +++---- lbry/stream/stream_manager.py | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/lbry/stream/managed_stream.py b/lbry/stream/managed_stream.py index e8e67b33c..3e615dfc6 100644 --- a/lbry/stream/managed_stream.py +++ b/lbry/stream/managed_stream.py @@ -354,20 +354,19 @@ class ManagedStream(ManagedDownloadSource): self.reflector_progress = int((i + 1) / len(we_have) * 100) except (asyncio.TimeoutError, ValueError): return sent - except ConnectionRefusedError: + except ConnectionError: return sent except (OSError, Exception) as err: if isinstance(err, asyncio.CancelledError): log.warning("stopped uploading %s#%s to reflector", self.claim_name, self.claim_id) - raise err - if isinstance(err, OSError): + elif isinstance(err, OSError): log.warning( "stopped uploading %s#%s to reflector because blobs were deleted or moved", self.claim_name, self.claim_id ) else: log.exception("unexpected error reflecting %s#%s", self.claim_name, self.claim_id) - raise asyncio.CancelledError() + return sent finally: if protocol.transport: protocol.transport.close() diff --git a/lbry/stream/stream_manager.py b/lbry/stream/stream_manager.py index 541f5cdf0..cc4684976 100644 --- a/lbry/stream/stream_manager.py +++ b/lbry/stream/stream_manager.py @@ -160,13 +160,13 @@ class StreamManager(SourceManager): async def reflect_streams(self): try: - return await self._reflact_streams() + return await self._reflect_streams() except asyncio.CancelledError: raise except Exception: log.exception("reflector task encountered an unexpected error!") - async def _reflact_streams(self): + async def _reflect_streams(self): # todo: those debug statements are temporary for #2987 - remove them if its closed while True: if self.config.reflect_streams and self.config.reflector_servers: