From 1e4fa87437240544296f82ff1dd7ec851a8c06f9 Mon Sep 17 00:00:00 2001 From: Rob Ballantyne Date: Thu, 28 Aug 2025 15:48:57 +0100 Subject: [PATCH] Prevent timeout and allow long running connections --- lib/backend.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/backend.py b/lib/backend.py index b087e22..508d522 100644 --- a/lib/backend.py +++ b/lib/backend.py @@ -11,7 +11,7 @@ from functools import cached_property from distutils.util import strtobool from anyio import open_file -from aiohttp import web, ClientResponse, ClientSession, ClientConnectorError, ClientTimeout +from aiohttp import web, ClientResponse, ClientSession, ClientConnectorError, ClientTimeout, TCPConnector import requests from Crypto.Signature import pkcs1_15 @@ -75,8 +75,13 @@ class Backend: @cached_property def session(self): log.debug(f"starting session with {self.model_server_url}") + connector = TCPConnector( + force_close=True, # Required for long running jobs + enable_cleanup_closed=True, + ) + timeout = ClientTimeout(total=None) - return ClientSession(self.model_server_url, timeout=timeout) + return ClientSession(self.model_server_url, timeout=timeout, connector=connector) def create_handler( self,