Fix: release WorkflowTool database sessions promptly (#26893)

This commit is contained in:
-LAN-
2025-10-21 15:17:17 +08:00
committed by GitHub
parent fb6f05c267
commit 759a932bb7
12 changed files with 123 additions and 65 deletions

View File

@@ -326,7 +326,8 @@ class ToolManager:
workflow_provider_stmt = select(WorkflowToolProvider).where(
WorkflowToolProvider.tenant_id == tenant_id, WorkflowToolProvider.id == provider_id
)
workflow_provider = db.session.scalar(workflow_provider_stmt)
with Session(db.engine, expire_on_commit=False) as session, session.begin():
workflow_provider = session.scalar(workflow_provider_stmt)
if workflow_provider is None:
raise ToolProviderNotFoundError(f"workflow provider {provider_id} not found")