Для контекста я запускаю приложение fastAPI, и при каждом запросе приложение получает он создает асинхронную фоновую задачу для отправки запроса на публикацию в другой внешний API.
Я создаю общий aiohttp.ClientSession для фоновых задач (мне это нужно для объединения пулов соединений с другим внешним API)
В основном это работает, но я вижу некоторые ошибки при закрытии соединения во время передачи сообщения.
"ERROR", "name": "asyncio", "lineno": 1707, "message": "Exception in callback H11Protocol.timeout_keep_alive_handler()
handle: ", "exc_info": "Traceback (most recent call last):
File "/usr/local/lib/python3.8/asyncio/events.py", line 81, in _run
self._context.run(self._callback, *self._args)
File "/usr/local/lib/python3.8/site-packages/uvicorn/protocols/http/h11_impl.py", line 383, in timeout_keep_alive_handler
self.conn.send(event)
File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 512, in send
data_list = self.send_with_data_passthrough(event)
File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 537, in send_with_data_passthrough
self._process_event(self.our_role, event)
File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 272, in _process_event
self._cstate.process_event(role, type(event), server_switch_event)
File "/usr/local/lib/python3.8/site-packages/h11/_state.py", line 293, in process_event
self._fire_event_triggered_transitions(role, _event_type)
File "/usr/local/lib/python3.8/site-packages/h11/_state.py", line 311, in _fire_event_triggered_transitions
raise LocalProtocolError(
h11._util.LocalProtocolError: can't handle event type ConnectionClosed when role=SERVER and state=SEND_BODY"}
кто-нибудь сталкивался с этим раньше? Или знаете, как это исправить?
[list] [*]Я использую aiohttp==3.10.10 с Python 3.8. [*]Для контекста я запускаю приложение fastAPI, и при каждом запросе приложение получает он создает асинхронную фоновую задачу для отправки запроса на публикацию в другой внешний API. [*]Я создаю общий aiohttp.ClientSession для фоновых задач (мне это нужно для объединения пулов соединений с другим внешним API) [*]В основном это работает, но я вижу некоторые ошибки при закрытии соединения во время передачи сообщения. [/list] [code]"ERROR", "name": "asyncio", "lineno": 1707, "message": "Exception in callback H11Protocol.timeout_keep_alive_handler() handle: ", "exc_info": "Traceback (most recent call last): File "/usr/local/lib/python3.8/asyncio/events.py", line 81, in _run self._context.run(self._callback, *self._args) File "/usr/local/lib/python3.8/site-packages/uvicorn/protocols/http/h11_impl.py", line 383, in timeout_keep_alive_handler self.conn.send(event) File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 512, in send data_list = self.send_with_data_passthrough(event) File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 537, in send_with_data_passthrough self._process_event(self.our_role, event) File "/usr/local/lib/python3.8/site-packages/h11/_connection.py", line 272, in _process_event self._cstate.process_event(role, type(event), server_switch_event) File "/usr/local/lib/python3.8/site-packages/h11/_state.py", line 293, in process_event self._fire_event_triggered_transitions(role, _event_type) File "/usr/local/lib/python3.8/site-packages/h11/_state.py", line 311, in _fire_event_triggered_transitions raise LocalProtocolError( h11._util.LocalProtocolError: can't handle event type ConnectionClosed when role=SERVER and state=SEND_BODY"} [/code] кто-нибудь сталкивался с этим раньше? Или знаете, как это исправить?