From d5a521eef2b436f5a98aa21edb6844ee1c67b003 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=90=E5=B0=8F=E5=BF=83?= Date: Mon, 1 Sep 2025 14:48:56 +0800 Subject: [PATCH] fix: Fix database connection leak in EasyUIBasedGenerateTaskPipeline (#24815) --- .../task_pipeline/easy_ui_based_generate_task_pipeline.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/api/core/app/task_pipeline/easy_ui_based_generate_task_pipeline.py b/api/core/app/task_pipeline/easy_ui_based_generate_task_pipeline.py index 471118c8cb..e3b917067f 100644 --- a/api/core/app/task_pipeline/easy_ui_based_generate_task_pipeline.py +++ b/api/core/app/task_pipeline/easy_ui_based_generate_task_pipeline.py @@ -472,9 +472,10 @@ class EasyUIBasedGenerateTaskPipeline(BasedGenerateTaskPipeline): :param event: agent thought event :return: """ - agent_thought: Optional[MessageAgentThought] = ( - db.session.query(MessageAgentThought).where(MessageAgentThought.id == event.agent_thought_id).first() - ) + with Session(db.engine, expire_on_commit=False) as session: + agent_thought: Optional[MessageAgentThought] = ( + session.query(MessageAgentThought).where(MessageAgentThought.id == event.agent_thought_id).first() + ) if agent_thought: return AgentThoughtStreamResponse(